问题:
我有两个长列表,每个列表中大约有50,000个元素,并且它们的大小是完全相同的。列表a包含8个值(全部不同),后面跟着16个零,直到列表结尾,列表b是对第一个列表执行三角函数而得到的结果。
我想从列表a中删除所有的零,然后删除列表b中相应的索引。
示例(全部为1和2只是为了简单起见):
a = [1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2] ...
b = [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2] ...
成为
a = [1,1,1,1,1,1,1,1,2,2] ...
b = [1,1,1,1,1,1,1,1,2,2] ...
实际上,除了零之外,每个元素都有一个不同的值。因此,我考虑使用循环来扫描列表a寻找零,并从两个列表中删除该索引处的元素。
到目前为止,这是我想到的方法,但我收到了“列表索引超出范围”的错误提示。
for i in range(len(a)):
if a[i] == 0:
a.remove(a[i])
b.remove(b[i])
else:
pass
谢谢