我有两个列表要平方以下代码正在运行
a = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
b = [1, 3, -4, 5, 5, 3, 2, 1, 4, 8, 9]
a_sqrd = []
b_sqrd = []
for i in a:
a_sqrd.append(a[i]*a[i])
b_sqrd.append(b[i]*b[i])
print a_sqrd
print b_sqrd
结果:
[0、1、4、9、16、25、36、49、64、81、100]
[1, 9, 16, 25, 25, 9, 4, 1, 16, 64, 81]
但是当我尝试
a = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
b = [1, 3, -4, 5, 5, 3, 2, 1, 4, 8, 9]
a_sqrd = []
b_sqrd = []
for i in a:
a_sqrd.append(a[i]*a[i])
for i in b:
b_sqrd.append(b[i]*b[i])
print a_sqrd
print b_sqrd
结果:
[0、1、4、9、16、25、36、49、64、81、100]
[9、25、1、9、9、25、16、9、25、16、64]
为什么运行两个 for 循环会影响列表 b?我期待与 a 中相同的结果,我确定我缺少一些明显的东西