为何Python中list.sort()方法调用后返回None?
为什么
print(realNumbersArray.sort())返回None? 这是因为Python里列表的sort()方法是原地排序的设计:它会直接修改原列表的元素顺序,但不会返回排序后的新列表,执行后默认返回None。类似的还有list.append()、list.pop()这类原地修改列表的方法,都是只做修改不返回结果。
要正确打印排序后的列表,有两种常用写法:
- 先调用
sort()完成排序,再打印原列表:
realNumbersArray.sort() print(realNumbersArray)
- 使用
sorted()函数,它会生成并返回一个排序后的新列表,原列表不受影响:
print(sorted(realNumbersArray))
内容的提问来源于stack exchange,提问作者DennisM
相关产品推荐
相关产品推荐

