我是Python的新手,我在列表中遇到困难。我希望从列表中除了值10.5以外的所有值减1。下面的代码给出了x3列表分配索引超出范围的错误。到目前为止,该代码:Python - 在列表中减去值
x2=[10.5, -6.36, 11.56, 19.06, -4.37, 26.56, 9.38, -33.12, -8.44, 0.31, -13.44, - 6.25, -13.44, -0.94, -0.94, 19.06, 0.31, -5.94, -13.75, -23.44, -51.68, 10.5]
x3=[]
i=0
while (i<22):
if x2[i]==10.5:
x3[i]=x2[i]
else:
x3[i]=x2[i]-1
break
#The result I want to achieve is:
#x3=[10.5, -7.36, 10.56, 18.06, -5.37, 25.56, 8.38, -34.12, -9.44, -1.31, -14.44, -7.25, -14.44, -1.94, -1.94, 18.06, -1.31, -6.94, -14.75, -24.44, -52.68, 10.5]
+1呈现例如输入,所需的输出,并且你已经尝试的代码。 – 2012-04-06 11:38:36
您尝试向列表中添加元素的方式适用于字典;对于列表,你不能只分配它。要么使用'list.append'方法,要么使用'map'和* list comprehension *的答案建议的选项之一。 – 2012-04-06 11:46:42