【问题标题】:Python Sort() methodPython 排序()方法
【发布时间】:2013-05-12 11:34:16
【问题描述】:

我开始学习 Python。

有人能解释一下为什么 sort() 返回 None 吗?

alist.sort()            ## correct
alist = blist.sort()    ## NO incorrect, sort() returns None

为什么不应该

alist = blist.sort()

返回排序后的列表并返回给alist?这对我来说没有意义。

谢谢。

【问题讨论】:

  • sorted('FMRT', key=lambda x: ord(x) % 16)
  • 您尝试阅读文档了吗?

标签: python


【解决方案1】:

alist.sort() 就地排序alist,修改alist 本身。

如果您想在某处分配新列表,请使用blist = sorted(alist)

【讨论】:

    【解决方案2】:

    使用以下内容:

    alist = sorted(blist)
    

    【讨论】:

      【解决方案3】:

      当你想对同一个列表进行排序时,你必须使用sort() 列表方法。但是如果您不想更改原始列表的顺序,但需要原始列表的排序副本,请使用sorted() 内置函数。

      【讨论】:

        【解决方案4】:

        回答他的问题,它返回无,因为该方法总是返回无。当你使用它时,它会自动修改列表,所以它不会保持原样(即它不会返回列表的排序副本)。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2014-02-28
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-11-17
          • 1970-01-01
          相关资源
          最近更新 更多