开发者社区> 问答> 正文

python sort和sorted的区别

如果你需要改变原始列表的顺序,或者你正在处理的是列表,那么sort()可能是更好的选择,如果你不想改变原始数据,或者你正在处理的是一个非列表的可迭代对象,那么你应该使用sorted()。

展开
收起
游客ig2nvy4wk44lq 2024-03-06 10:55:46 28 0
2 条回答
写回答
取消 提交回答
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    你的理解是正确的。在Python中,sort()和sorted()都可以用来对数据进行排序,但是它们之间有一些重要的区别:

    1. sort()是一个列表方法,它会直接修改原始列表的顺序,而sorted()是一个内置函数,它会返回一个新的排序后的列表,而不会改变原始数据。

    2. sort()只能用于列表,而sorted()可以用于任何可迭代对象,包括列表、元组、字典等。

    3. sort()提供了大量的可选参数,如key、reverse等,可以用来定制排序的行为,而sorted()也提供了同样的参数。

    所以,如果你需要改变原始列表的顺序,或者你正在处理的是列表,那么sort()可能是更好的选择。如果你不想改变原始数据,或者你正在处理的是一个非列表的可迭代对象,那么你应该使用sorted()。

    2024-03-08 21:35:34
    赞同 展开评论 打赏
  • Python中的sort()sorted()都是用于对元素进行排序的方法,但它们的主要区别在于:

    • sort()是列表(list)对象的一个方法,它直接在原列表上进行操作,并修改其顺序。例如:my_list = [3, 1, 4, 1, 5]; my_list.sort(),执行后,my_list的内容会被永久地重新排序。

    • sorted()是一个内置函数,它可以对任何可迭代对象(不仅仅是列表)进行排序,并返回一个新的排序后的列表,而不会改变原对象的顺序。例如:new_sorted_list = sorted(my_list),原列表my_list保持不变。

    2024-03-06 15:20:55
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
From Python Scikit-Learn to Sc 立即下载
Data Pre-Processing in Python: 立即下载
双剑合璧-Python和大数据计算平台的结合 立即下载