Python-sorted(list)和list.sort()有什么区别?
list.sort()
对列表进行排序并保存排序后的列表,同时sorted(list)
返回列表的排序后的副本,而不更改原始列表。
- 但是什么时候使用哪个呢?
- 哪个更快?又快多少?
- 之后可以检索列表的原始位置
list.sort()
吗?
回答:
sorted()
返回一个新的排序列表,而原始列表不受影响。就地list.sort()
对列表进行排序,使列表索引突变,然后返回None(就像所有就地操作一样)。
sorted()
适用于任何可迭代的对象,而不仅仅是列表。字符串,元组,字典(你将获得键),生成器等,返回包含所有已排序元素的列表。
使用
list.sort()
时要变异列表中,sorted()
当你想要一个新的排序的对象返回。使用sorted()
时要排序的东西,是一个可迭代,而不是一个名单尚未。对于列表,
list.sort()
它比sorted()
不需要创建副本要快。对于其他任何迭代,你别无选择。不,你无法检索原始位置。一旦你致电
list.sort()
,原始订单就消失了。
以上是 Python-sorted(list)和list.sort()有什么区别? 的全部内容, 来源链接: utcz.com/qa/419868.html