【问题标题】:I have a simple question on 'sort()' in python [duplicate]我对python中的'sort()'有一个简单的问题[重复]
【发布时间】:2021-09-02 10:33:11
【问题描述】:

当我对这个列表进行排序时,

list1 = ['6: baby', '1: dance', '24: doo', '1: lyrics', '6: shark']
list1.sort()

输出 = ['1: dance', '1: lyrics', '24: doo', '6: baby', '6: shark'] 输出是这样的。我不明白为什么“24:doo”在中间,而不是在后面

【问题讨论】:

  • 这是因为字典顺序
  • 排序为字符串,而不是数字
  • “2”按字典顺序排在“6”之前。

标签: python python-3.x list sorting


【解决方案1】:

list1 是一个字符串列表。所以 sort 函数将各种项目作为字符串进行比较。

为了比较两个字符串,我们查看第一个字符。根据字典顺序哪个先出现,我们声明一个大于另一个。如果第一个字母相同,我们比较下一个字母,依此类推...

通过单独比较第一个字符,我们知道'24:doo' 将始终在您的列表中间。

【讨论】:

    猜你喜欢
    • 2021-04-26
    • 2011-03-23
    • 1970-01-01
    • 2020-11-03
    • 1970-01-01
    • 2014-09-10
    • 1970-01-01
    • 2011-04-14
    • 2021-06-23
    相关资源
    最近更新 更多