Methods for sorting a dictionary
我指的是这个问题:https://stackoverflow.com/a/575889/292291
如果我使用整数作为键,那么看起来我得到了排序顺序的保证?
1 2 3 | >>> dict = { 2:"list 2", 0:"list 0", 1:"list 1" } >>> dict {0: 'list 0', 1: 'list 1', 2: 'list 2'} |
在
在
1 2 | >>> dict.get <built-in method get of dict object at 0x1d27830> |
1-口述永远不能保证一个顺序,有时它甚至看起来像这样,但在那里得到足够的数字,你会发现他们没有(这是因为每一个键都有散列)
2-这两个相同:
1 2 3 4 | lambda key: mydict[key] def temp_function(key): return mydict[key] |
基本上,您正在创建一个临时函数,它接收键作为参数,并返回mydict[键]
3-sorted的第二个参数是传递当前dict键的将被调用的函数。此返回的值将用于确定已排序的dict的顺序。
不可以。字典是按其键的哈希排序的,不能保证哈希算法在版本或实现之间不会发生更改。
绑定到
首先,请避免调用一个变量
1)我不相信。如果您需要排序的dict,只需使用来自
2)您应该将其作为一个匿名函数来读取,给定一个输入参数
1 2 3 | def foo(key): # assume mydict is in scope return mydict[key] |
3)假设您的变量