当前位置: 首页 > 面试题库 >

其他Python dict()中的键顺序[重复]

范瀚昂
2023-03-14
问题内容

这个问题已经在这里有了答案

8年前关闭。

可能重复:

Python字典,键/值的顺序应与声明的顺序相同

如果我在特定程序中有两个具有相同键(但值不同)的不同字典,.keys()的顺序是否相同?我做了一些测试,似乎是这样,但是在不知道dict的内部如何的情况下,我不确定是否可以保证。

谢谢,


问题答案:

您完全不能依赖键顺序:

>>> {1: None, 9: None}
{1: None, 9: None}
>>> {9: None, 1: None}
{9: None, 1: None}
>>> {1: None, 2: None}
{1: None, 2: None}
>>> {2: None, 1: None}
{1: None, 2: None}

字典是无序的。在Python 2.7中有collections.OrderedDict



 类似资料:
  • void 运算符 void运算符的作用是执行一个表达式,然后不返回任何值,或者说返回undefined。 void 0 // undefined void(0) // undefined 上面是void运算符的两种写法,都正确。建议采用后一种形式,即总是使用圆括号。因为void运算符的优先性很高,如果不使用括号,容易造成错误的结果。比如,void 4 + 7实际上等同于(void 4) + 7。

  • 问题内容: 在PostgreSQL中,我有一个数据库,我打算进行以下表声明: 一切正常,除了在创建最后一个表(更正)时出现以下错误: 错误:没有唯一的约束匹配给定键的引用表“提交” 我对更正表的打算是对每个提交都有唯一的更正,但是一个提交可以(也可以不)具有更正。 我该如何解决这个错误?是设计问题还是表声明错误? 问题答案: 外键约束不关心所引用的列是否在引用另一列本身。但是引用的列 必须 是唯一

  • 问题内容: 我有一本字典 但是,我需要字典的顺序不同: 做这个的最好方式是什么? 问题答案: 字典 没有顺序 。因此,没有办法做到这一点。 如果您使用的是python2.7 +,则可以使用-在这种情况下,您可以使用检索项目列表,然后将其反向并从反向列表中创建一个新项: 如果您使用的是旧版python,则可以从http://code.activestate.com/recipes/576693/获得

  • 问题内容: 在对bat Logic-2进行编码时,我在下面列出的第一个方法中输入了loneSum问题。对于所有测试,只有一个测试是正确的。它唯一失败的是所有变量都等于同一整数。但是,当我在线查找解决方案时,得到了下面列出的第二种方法,并且该方法行得通。我认为我的方法和正确的解决方案之间的唯一区别是“ else if(a == b && b == c){return 0;}”的位置。我的问题是条件的

  • 问题内容: 在对bat Logic-2进行编码时,我在下面列出的第一个方法中输入了loneSum问题。对于所有测试,只有一个测试是正确的。它唯一失败的是所有变量都等于同一整数。但是,当我在线查找解决方案时,得到了下面列出的第二种方法,并且该方法行得通。我认为我的方法和正确的解决方案之间的唯一区别是“ else if(a == b && b == c){return 0;}”的位置。我的问题是条件的

  • 问题内容: 码: 打印。我不确定该方法如何确定l中关键字的顺序。但是,我希望能够以“适当”的顺序检索关键字。当然,正确的顺序将创建列表。 和这个: 问题答案: 你可以使用OrderedDict(需要Python 2.7)或更高版本。 另外,请注意,由于dict你使用进行创建的操作已经忘记了元素的顺序,因此该操作无效。相反,你想使用。 如文档中所述,对于低于python 2.7的版本,你可以使用此配