无论如何,我可以在执行 for 循环时向迭代变量添加常量吗? 这就是我想要实现的目标:
for i += 100 in [9,2,7,4,1,8,3,5]:
print(i)
输出应为:
109
102
107
104
101
108
103
105
我知道我可以在打印前添加常量。但是很好奇在迭代过程中是否有任何要添加的内容。
for i in [9,2,7,4,1,8,3,5]:
print(i+100)
否,但您可以在将常量分配给迭代变量之前向每个值添加一个常量。
for i in (x + 100 for x in [9, 2, 7, 4, 1, 8, 3, 5])
...
您也可能滥用属性,因为for
循环执行赋值的方式与=
非常相似。
class A:
def __init__(self, incr):
self.incr = incr
@property
def x(self):
return self._x + self.incr
@x.setter
def x(self, v):
self._x = v
i = A(200)
for i.x in [1,2,3]:
print(i.x)
可以从将数据分配给列表项开始,然后如上所述循环访问它。将来您将开始使用常量或需要不断更改数据。或者,如果您有很多列表,并且可以尝试同时为所有列表执行此操作,这将对您有所帮助:
list1 = [1,2,3,4,5,6,7,8,9]
list2 = [5,4,3,2,1]
for i in list1:
print(100 + i)
for i in list2:
print(200+ i)