代码之家  ›  专栏  ›  技术社区  ›  DCR

Python如何将元组强制转换为列表并应用点表示法[重复]

  •  -1
  • DCR  · 技术社区  · 1 年前

    为什么:

    x = (5,4,3)
    y = list(x)
    y.sort()
    

    工作,但是

    x = (5,4,3)
    y = list(x).sort()
    

    不工作?

    3 回复  |  直到 1 年前
        1
  •  2
  •   Ahmed AEK    1 年前
    y = list(x)
    

    这调用了函数 list 在…上 x 并将结果放入y

    y = list(x).sort()
    

    这调用了函数 列表 在…上 x 呼叫 .sort() 在结果列表中,然后存储 .sort()的返回 在里面 y ,的返回 .sort() None

    列表在内存中进行排序,但已排序的列表被丢弃,并且仅 没有一个 存储在 y


    再通风 What is the difference between sort and sorted

        2
  •  2
  •   XMehdi01    1 年前

    这个 sort() 中的方法 蟒蛇 对列表中的元素进行适当排序并返回 None

    当你做这样的事情时:

    y = list(x).sort()
    

    你可以,使用 sorted() 包含元组x的排序元素。

    y = sorted(x)
    

    如果要创建一个新的排序列表而不修改原始列表,则应使用 排序() 作用

        3
  •  0
  •   hexolitemax    1 年前

    在第二种情况下,仅使用 list(x).sort() 而不是 y = list(x).sort() 应该有效,因为您不能“储存”排序方法的结果。