1

如果我有一个 python 字典(或集合,或其他类型的无序容器)并且我调用它,我可以期待哪个键和/__str____repr__值的顺序?

当然,正如“无序容器”这个名称所指出的,所包含的元素没有特定的顺序。然而,如果包含的元素以任意顺序打印,这种任意顺序至少是持久的吗?

  1. 容器的字符串表示是否总是相同的(假设我没有更改容器或其元素的任何内容)?或者第 n 次调用__repr____str__在某些时候会改变打印元素的顺序?

  2. 如果我重新创建具有相同内容的字典(可能在不同的机器上)会发生什么情况,打印元素的顺序是否仍与以前相同?

编辑:为什么这个问题被标记为重复?我不是在问为什么顺序是任意的。我问字符串表示是否是持久的。这可能不仅仅取决于底层的哈希机制。

4

0 回答 0