Skip to main content
 首页 » 编程设计

目录列表的 Python sorted() 与 .sort()

2025年05月04日10Free-Thinker

file_list = os.listdir(os.getcwd) 
files = file_list.sort() 

如果我有一个基于上述目录列表的列表,为什么有时使用 files.sort() 函数返回 NoneType 但使用 sorted(files) 函数返回预期的排序?

请您参考如下方法:

list.sort() 执行就地排序,而 sorted(list) 返回排序列表的副本。 这意味着 .sort() 将返回 None 因为它没有返回值,因此默认为 None。如果您想保留原始列表,使用 sorted() 很有用,因为 .sort() 会破坏原始顺序。

>>> my_list = [3, 1, 2] 
>>> sorted_list = sorted(my_list) 
>>> sorted_list 
[1, 2, 3] 
>>> my_list 
[3, 1, 2] 
>>> print my_list.sort() 
None 
>>> my_list 
[1, 2, 3]