Python数组/列表重置内部循环 从集合导入数据 进口itertools lfsr=deque([]) 抽头=[] i=0 x=0 y=0 测试=“” 对于itertools.product([0,1]中的i,重复=15): lfsr=deque(i) #打印(lfsr) 当x
很抱歉重新发布 我有一个简化版本的代码上面有相同的问题。我试图将lfsr列表设置为一个二进制数,一旦设置好,我想在嵌套循环中使用这个值。我认为lfsr设置正确,因为当我取消注释第一个#print时,它会按它应该的方式打印,但是当我尝试在嵌套循环期间打印它时,它的所有输出都是0 是什么导致数组/列表设置为0,并从最初设置时起发生更改?Python数组/列表重置内部循环 从集合导入数据 进口itertools lfsr=deque([]) 抽头=[] i=0 x=0 y=0 测试=“” 对于itertools.product([0,1]中的i,重复=15): lfsr=deque(i) #打印(lfsr) 当x,python,arrays,Python,Arrays,很抱歉重新发布 我有一个简化版本的代码上面有相同的问题。我试图将lfsr列表设置为一个二进制数,一旦设置好,我想在嵌套循环中使用这个值。我认为lfsr设置正确,因为当我取消注释第一个#print时,它会按它应该的方式打印,但是当我尝试在嵌套循环期间打印它时,它的所有输出都是0 是什么导致数组/列表设置为0,并从最初设置时起发生更改? 谢谢它不会被重置。问题是你的循环控制。由于您从未将x和y重置为0,因此在循环中输入的唯一时间是在全部0s出列时 from collections import de
谢谢它不会被重置。问题是你的循环控制。由于您从未将
x
和y
重置为0,因此在循环中输入的唯一时间是在全部0
s出列时
from collections import deque
import itertools
lfsr = deque([])
taps = []
i=0
x=0
y=0
test=''
for i in itertools.product([0,1],repeat=15):
lfsr = deque(i)
#print(lfsr)
while x < len(lfsr):
while y < len(lfsr):
taps = [x, y]
#print (lfsr)
y+=1
x+=1
from collections import deque
import itertools
lfsr = deque([])
taps = []
i=0
test=''
for i in itertools.product([0,1],repeat=4):
# reduced length to 4, to see the effects more easily
lfsr = deque(i)
print("TOP", lfsr)
limit = len(lfsr)
x=0
while x < limit:
y=0
while y < limit:
taps = [x, y]
print ("MID", lfsr)
y+=1
x+=1
for i in itertools.product([0,1],repeat=4):
lfsr = deque(i)
print("TOP", lfsr)
limit = len(lfsr)
for x in range(limit):
for y in range(limit):
taps = [x, y]
print ("MID", lfsr)