试着把dictionary添加到deque中。
举个例子:
from collections import deque
graph={}
graph['key']=['value_1','value_2','value_3']
implement_first=deque()
implement_second=deque(graph['key'])
implement_first.append(graph['key'])如果我打印:
print(implement_first)
print(implement_first.popleft())我得到了这个deque([['value_1', 'value_2', 'value_3']])和['value_1', 'value_2', 'value_3']
如果我打印:
print(implement_second)
print(implement_second.popleft())我明白了:deque(['value_1', 'value_2', 'value_3'])和value_1
这是怎么回事?为什么我要得到implement_first.append(graph['key'])的列表,这个实现是implement_second=deque(graph['key'])做什么的?
发布于 2021-02-04 06:41:52
以下2是不等效的
d1 = deque(x)
d2 = deque()
d2.append(x)deque构造函数采用可迭代的方式,并追加其所有元素。所以下面的2将是相同的
d1 = deque(x)
d2 = deque()
for y in x:
d2.append(y)您的代码不会引发任何错误,因为graph["key"]是一个列表(一个可迭代的),它既可以转换为deque,也可以是deque的一个元素。
https://stackoverflow.com/questions/66040250
复制相似问题