Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/305.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 为字典的键指定有序标量_Python_Dictionary - Fatal编程技术网

Python 为字典的键指定有序标量

Python 为字典的键指定有序标量,python,dictionary,Python,Dictionary,我试图将整数1,2,…,N分配给字典的键。每个键是一个4维向量;所以我应该把数字1,…,N分配给形式(I,j,k,l)的键。这似乎是一项微不足道的工作;我想我已经呆了一整晚,我的大脑不工作了。我真的很感谢你的帮助 >>> x = dict() >>> x[(1,2,3,4)] = 1 >>> x {(1, 2, 3, 4): 1} 它工作得很好 请注意,字典不保证顺序。如果要创建字典,{(1,2,3,4):1,(2,3,4,5):2,…(n

我试图将整数1,2,…,N分配给字典的键。每个键是一个4维向量;所以我应该把数字1,…,N分配给形式(I,j,k,l)的键。这似乎是一项微不足道的工作;我想我已经呆了一整晚,我的大脑不工作了。我真的很感谢你的帮助

>>> x = dict()
>>> x[(1,2,3,4)] = 1
>>> x
{(1, 2, 3, 4): 1}
它工作得很好


请注意,字典不保证顺序。

如果要创建字典,{(1,2,3,4):1,(2,3,4,5):2,…(n,n+1,n+2,n+3):n}:

>>> N = 4
>>> {(i,i+1,i+2,i+3):i for i in range(1, N+1)}
{(2, 3, 4, 5): 2, (1, 2, 3, 4): 1, (4, 5, 6, 7): 4, (3, 4, 5, 6): 3}

dict((键,索引)用于索引,在枚举中输入(键的序列,开始=1))
?相关:(注意:在python2.7和python3中,你也可以使用dict理解:
{key:index for index,key in enumerate(sequence_of_j_k_l,start=1)}
)。你想创建类似于
{(1,2,3,4):1,(2,3,4,5):2,…(n,n+1,n+2,n+3):n}
的字典吗,l和字典中的值?否则,如果您只是想“枚举”这些键,我前面的评论已经解决了您的问题。@Bakuriu:实际上,没有。我所需要做的就是为字典中的每个键分配一个唯一的数字。@NNsr Than我的注释已经提供了一个解决方案,因为每个键都有一个不同的值。插入具有唯一值的新关键点也很容易,因为您可以跟踪插入的最大值。如果你想使用随机数,那么你应该有一个
used\u id=set()
,并跟踪使用的值。