为什么在列表中排序不起作用?

时间:2015-10-28 07:37:07

标签: python python-2.7

该片段如下:

s = set()
s.add("Banana")
s.add("Apple")
s.add("Pear")
s.add("Strawberry")

我想将该集合排序为列表。所以我使用下面的代码:

l = list(s).sort()

lNone。如果我将该行分成两行,如下所示:

l2 = list(s)
l2.sort()

然后它有效。我的问题是为什么第一个失败了?

1 个答案:

答案 0 :(得分:2)

list.sort就地排序。如果要排序并返回已排序的列表,可以使用sorted(list)代替。

您可以将代码更改为以下内容。

sorted_list = sorted(s, key=str.lower)