UU们,c为什么不对啊,.sort与sorted之间有什么区别吗

img


.sort 与 sorted之间有什么区别吗,想要搞明白这之间的关系,麻烦UU们了

因为 c 是 打印 ls.sort() 的返回值【但实际是 ls.sort 并没有返回值】,并不是 打印 ls 列表
sorted(ls) 则是会返回一个新的列表
参考这篇看看《Python中sort和sorted的区别》

ls.sort函数的返回值类型是void,没有返回值,ls.sort()只是排序列表,print(ls)才能打印列表的值
然后 sorted()函数是python内置函数,它的返回值是排序好之后的列表。ls.sort()是列表类型的内置函数,它没有返回值,具体排序用法是:ls.sort(),sorted(ls)

  • 这篇博客: sort和sorted方法的总结中的 二丶sorted函数 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • Help on built-in function sorted in module __builtin__:
    sorted(...)
        sorted(iterable, cmp=None, key=None, reverse=False) --> new sorted list

    根据上述描述,sorted函数是一个python内建函数,它的参数(除第一个外)和sort表示的含义一致,它会重新生成一个对象

    案例1

    dsort = [6, 2, 1, 5, 4]
    a = sorted(dsort)
    print a
    [1, 2, 4, 5, 6]