from collections import deque
def muladd(f1,f2_inv):
global ans
for j in f1:
ans = f1[j]*f2_inv[j]
f1 = [2,3,7,5,4,0,0,0,0,0,0,0,0]
f2 = [0,0,0,0,8,7,6,5,9,0,0,0,0]
conv = [0,0,0,0,0,0,0,0,0]
f2_inv = f2.reverse()
for i in conv:
conv[i]= muladd(f1,f2_inv)
print conv[i]
f1.rotate(1)
我无法运行代码。你知道吗
当我运行此代码时,我得到一个错误:
'NoneType' object has no attribute '__getitem__'
reverse()
与许多对列表进行操作的方法一样,不返回任何内容,而是就地修改列表。所以f2
没有。您应该使用独立的reversed()
函数。你知道吗或切片:
(请注意,此代码还有其他问题,例如循环中
i
始终为0,因为您只遍历0的列表。)在你的圈子里
i
将是一个对象(它在conv
的所有对象上循环,因此i
是一个对象而不是一个索引号)。这样就不能使用conv[i]
。要使用i
作为索引,请使用:(这不是导致错误的原因,但如果您的错误已修复,则会导致问题,因为
conv[i]
始终是conv[0]
,因为i
是0
而不是当前的索引号)相关问题 更多 >
编程相关推荐