moliu 2023-09-09 16:13 采纳率: 57.1%
浏览 1

对列表 sortedlist,sortedlist.sort() 可以,直接 sortedlistcopy = sortedlist.sort() 不可以。这有意思么?

sortedlist= [2,4,1,6]
sortedlist.sort()
sortedlistcopy = sortedlist
print(sortedlistcopy)

[1, 2, 4, 6]


sortedlist= [2,4,1,6]
sortedlistcopy = sortedlist.sort()
sortedlistcopy
type(sortedlistcopy)

NoneType

-------某教材上说,“You can sort a list in place (without creating a new object) by calling its sort function”。
直是不敲不知道。上面两小段代码表明,对列表 sortedlist,sortedlist.sort() 可以,直接 sortedlistcopy = sortedlist.sort() 不可以。
请问,这有意思么?

  • 写回答

2条回答 默认 最新

  • moliu 2023-09-09 16:33
    关注

    参考网友的问题及回复,已弄明白。分享如下:
    ----因为sort()表示整理该列表,返回None,sorted表示返回整理后的列表
    B.sort()相当于B=sorted(B)
    如果你一定要用sort,就先B.sort()再return B
    -----a.sort()是无返回值的
    print(a)
    sort()函数是列表的方法,不是python内置函数,list.sort()
    sorted()是内置函数,有返回值

    评论

报告相同问题?

问题事件

  • 创建了问题 9月9日