问题描述
试着把 t2.*
添加到 SELECT *
FROM t1
JOIN t2
USING (ID,Date)
。
以这个例子为例:
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_3']])
我明白了:
['value_1','value_3']
和 print(implement_second)
print(implement_second.popleft())
那么这里发生了什么?为什么我会得到 deque(['value_1','value_3'])
的列表,这个实现 value_1
的作用是什么?
解决方法
以下两个不等价
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
。