【问题标题】:sorting of a set in python在python中对集合进行排序
【发布时间】:2020-09-16 01:04:52
【问题描述】:

有人可以向我解释一下 python 中的 print 命令是如何订购一个集合的吗?我知道集合的顺序是随机的,但是如果我通过名称或打印命令调用集合,为什么会得到不同的输出?例如: test = {1,32,0,5,84,9} test有输出 {0, 1, 5, 9, 32, 84} 但 print(test) 有输出 {32, 1, 0, 5, 9, 84}

感谢您的回答!

【问题讨论】:

标签: python printing set output


【解决方案1】:

字典键值对在字典中没有顺序。它们在打印时列出的顺序是完全任意的。您不能从字典索引或创建切片。

它们是无序的集合,例如 Set;与顺序很重要的列表和元组不同。

希望对您有所帮助

【讨论】:

    【解决方案2】:

    调用test的时候,默认list中的元素是升序排列的,但是打印的时候是随机排列的。

    原因基本上是,每当你尝试打印一个无序集,正常的打印命令,或者即使你使用循环进行迭代,它都会给你这种错误的输出。

    在此处阅读更多信息,Python Sets

    【讨论】:

    • 谢谢!所以当我只调用测试时,我会得到一个有序列表作为输出?
    • 是的,只要它被声明为无序。
    猜你喜欢
    • 1970-01-01
    • 2019-04-24
    • 1970-01-01
    • 1970-01-01
    • 2015-01-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多