Python Sort()方法

时间:2012-02-23 06:10:41

标签: python

我开始学习Python。

有人能解释为什么sort()会返回None吗?

alist.sort()            ## correct
alist = blist.sort()    ## NO incorrect, sort() returns None

为什么不应该

alist = blist.sort()

返回已排序的列表并将其返回给alist?这对我没有意义。

感谢。

4 个答案:

答案 0 :(得分:10)

alist.sort()就地alist排序,修改alist本身。

如果要在某处指定新列表,请使用blist = sorted(alist)

答案 1 :(得分:1)

回答他的问题,它返回none,因为该方法总是返回None。当您使用它时,它会自动修改列表,因此它不会保持原始原样(即它不会返回列表的已排序副本)。

答案 2 :(得分:0)

使用以下内容:

alist = sorted(blist)

答案 3 :(得分:0)

如果要在同一列表中执行排序,则必须使用sort()列表方法。但是,如果您不想更改原始列表的序列,但需要原始列表的排序副本,请使用sorted()内置函数。