【发布时间】:2016-08-04 01:06:09
【问题描述】:
我创建了一个包含一组函数的字典。然后,我创建了一个尝试使用这些函数的 while 循环。但是循环的一部分并没有按照我想要的方式调用函数。代码如下:
while bool(str(w).endswith(' 2')) != True:
a = re.search('[0-9]{1,2}$', str(w))
w = w & int(a.group())-1
result = df[f[w]]
第三行,w = w & int(a.group())-1,当我在这个循环之外测试它时,它没有按我想要的方式运行。我尝试设置w = 34,然后测试我设置34 & int(a.group())-1 时的结果。我没有给我34 & 33,而是得到32。有没有办法创建一个将参数添加到结果中的增量,而不是创建一些似乎在逻辑上没有派生的整数?我希望它以 34 开头,然后在循环中添加一个减一的整数(34、34 & 33、34 & 33 & 32 等)。提前致谢!
【问题讨论】:
-
请提供更多信息:
int(a.group())返回什么值? -
从 w = 34 开始,int(a.group())-1 返回 33。
标签: python loops dataframe while-loop