【发布时间】:2018-08-16 11:57:50
【问题描述】:
我正在尝试创建一个 for 循环或列表理解,它可以遍历一个范围,每次通过按顺序移动每个索引来提取单个值,存储它,然后将其与另一个值进行比较。 例如:
def home():
for i in range (1,10):
###not sure how to extract one by one
### take that single value that was extracted from the range above and
reduce it from a index of type int
t_1 = (board[0] - i )
### call upon a function and plug in result:
reducer(t_1)
if reducer is True:
print ('hello world')
else:
home()
所以基本上函数 home() 在循环中运行,直到它在范围内找到正确的数字,将其作为参数插入到函数 reducer(t_1) 并返回结果。 问题是我无法理解如何创建第一个 for 循环或列表理解以从所需范围中一次提取一个值,存储它然后对其进行评估。
【问题讨论】:
-
t_all = [board[0]-i for i in range(1,10)]怎么样。现在,t_all将包含所有t_1s,然后您可以将此列表发送到reducer -
if reducer is True-reducer是一个函数,所以它的真值总是True。您的意思是if reducer(t_1):...以便评估reducer返回的值吗? (旁注:在if语句中,if后面的表达式总是被评估为布尔值 - True 或 False - 所以附加is True或is False是多余的。if x:或if not x:就足够了)。
标签: python list for-loop list-comprehension