2024-10-05 15:21:11 发布
网友
我想在代码中执行几行之后停止循环
cursor.execute("select score*100 from daily_stats1 where user_id=102") rows = cursor.fetchall() # Convert query to objects of key-value pairs lastweek1 = list() i = 0 for row in rows: lastweek1.append(row[i]) if i == 4: break
试试这个:
for row in rows[:4]: lastweek1.append(row)
或者,您可以使用如下列表压缩:
lastweek1 = [row for row in rows[:4]]
你的代码对我来说没有意义-你想在i == 4时中断。但是您已经修复了i = 0,并且从不增加它。你想摆脱什么?也许你想说-
i == 4
i = 0
if rows.index(row) == 4: break
什么??你知道吗
你从未增加你的i。要么这样做,要么把它留给enumerate。另外,如果您澄清只想打印4行,最好在循环的顶部进行检查,否则您将打印5行:
i
enumerate
lastweek1 = list() for i, row in enumerate(rows): if i == 4: break lastweek1.append(row)
或者你不能把它复杂化:)。前四整行就这么简单
lastweek1 = rows[:4]
或者如果它是一个发电机(很可能),你需要具体化它
lastweek1 = list(rows[:4])
试试这个:
或者,您可以使用如下列表压缩:
你的代码对我来说没有意义-你想在
i == 4
时中断。但是您已经修复了i = 0
,并且从不增加它。你想摆脱什么?也许你想说-什么??你知道吗
你从未增加你的
i
。要么这样做,要么把它留给enumerate
。另外,如果您澄清只想打印4行,最好在循环的顶部进行检查,否则您将打印5行:或者你不能把它复杂化:)。前四整行就这么简单
或者如果它是一个发电机(很可能),你需要具体化它
相关问题 更多 >
编程相关推荐