我对此代码有疑问:
poss = [6,9,20]
for n in range(6,66):
if(n%6) == 0 or (n%9) == 0 or (n%20) == 0:
poss.append(n)
poss.sort()
count = 0
prev = poss[0]
for p in poss:
print p
if prev == p:
del poss[count]
count += 1
prev = p
print poss
第二个for循环旨在消除poss列表中的重复项,并且此代码可以正常工作。但是,如果我更改行:
prev = poss[0]
至
prev = 0
它不会正确删除它们。对于我的一生,我不知道为什么。
最佳答案
为什么不将poss放入set来删除重复项呢?例如。
poss = set(poss)
要回答您的原始问题,
prev = poss[0]
与prev = 0
不同,因为poss[0]
不为0。关于python - 为什么“prev = poss [0]”和“prev = 0”的行为不同?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5929814/