seq_sum = []
for i in range(len(sequence)):
seq_sum[i] = sequence[i] + inv_sequence[i]
print (seq_sum)
当我尝试运行此代码时,它返回错误:列表分配索引超出范围。我该如何解决该问题?sequence和inv_sequence是整数数组。
seq_sum[i]
将引发IndexError
的seq_sum
列表是空的。您应该append
改用:
seq_sum = []
for i in range(len(sequence)):
seq_sum.append(sequence[i] + inv_sequence[i])
print(seq_sum)
使用列表推导,您可以使用更漂亮的代码来获得相同的结果:
seq_sum = [seq_elem + inv_elem for seq_elem, inv_elem in zip(sequence, inv_sequence)]
您也可以使用,map
但有些人会争辩其可读性:
import operator
seq_sum = list(map(operator.add, sequence, inv_sequence))
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句