Tôi đang học Python và đã cố gắng để làm cho một deque. Tuy nhiên, tôi nhận được đầu ra không chính xác và tôi không chắc chắn tại sao. Mã của tôi là như sau:Phạm vi deque của Python?
p = [2, 1], [1, 1]
init_q= deque()
init_q.append(p)
for i in range(len(p)):
for j in range(len(p[i])):
temp = p[i][j]
p[i][j] = 0
init_q.append(p)
p[i][j] = temp
while init_q:
print init_q.pop()
Trong mã này tôi mất trong một danh sách, sau đó tôi muốn tạo một hàng đợi với 5 danh sách, 4 trong số đó có một 0 trong họ tại các địa điểm khác nhau, kết quả tôi muốn là :
([2, 1], [1, 1])
([0, 1], [1, 1])
([2, 0], [1, 1])
([2, 1], [0, 1])
([2, 1], [1, 0])
Tuy nhiên, kết quả tôi nhận được là:
([2, 1], [1, 1])
([2, 1], [1, 1])
([2, 1], [1, 1])
([2, 1], [1, 1])
([2, 1], [1, 1])
Bạn có chắc chắn rằng đầu ra dự kiến không bị lạc hậu? – abarnert