4 回答
![?](http://img1.sycdn.imooc.com/545865470001bf9402200220-100-100.jpg)
TA贡献2016条经验 获得超9个赞
list.sort()
是修改列表的修改函数。它本身不是一个列表。print(list.sort())
会得到你None
,因为没有列表可以从这个函数返回。
![?](http://img1.sycdn.imooc.com/5333a1660001394602000200-100-100.jpg)
TA贡献1862条经验 获得超6个赞
list.sort()
就地修改列表,这意味着它会在内存中的当前位置对列表进行排序,而不返回任何内容。
您想要的是sorted(list)
,它会复制列表,对其进行排序,然后返回它。
![?](http://img1.sycdn.imooc.com/54584f6d0001759002200220-100-100.jpg)
TA贡献1815条经验 获得超13个赞
回答您想要做的事情所暗示的问题:
如果你想要一行打印排序列表,你可以使用
print(sorted(the_list))
请注意,sorted(the_list)
返回 的新的排序版本the_list
,并且the_list
之后保持不变。
![?](http://img1.sycdn.imooc.com/545869470001a00302200220-100-100.jpg)
TA贡献1886条经验 获得超2个赞
list.sort()不会将排序后的列表存储在新变量中,而是直接修改列表,将其视为一个过程。您仍然可以通过复制原始列表来保留原始列表,只需使用 build-itcopy方法
代码:
list =['c','a','d','e']
# saving a copy of our original list
originList = list.copy()
print("original list:",originList)
# sorting our list
list.sort()
print("sorted list:",list)
输出:
oiginal list: ['c', 'a', 'd', 'e'] # the copy (now it's the original)
sorted list: ['a', 'c', 'd', 'e'] # the original (now it's sorted)
添加回答
举报