为了账号安全,请及时绑定邮箱和手机立即绑定

在Python循环中根据不同范围更新变量

在Python循环中根据不同范围更新变量

翻阅古今 2024-01-15 15:42:42
我需要在循环中定期更新变量,在循环中我需要根据这些范围设置变量值(X_state)。例如,如果我有一个从 1 开始到 200 的循环,并且每当范围的开始代表 60 的倍数且结束等于 start+5 时,我需要将变量 X_state 设置为从 0 到 1。因此,我不确定如何在本例中从 60 开始更新到 65,然后从 120 开始更新到 125,从 180 开始更新到 185。它仅适用于我的第一个范围,即 [60-65]periodic = 60for i in range(200):print(i)if (i%periodic==0)or (i>=periodic and i<=periodic+5):    x_state = 1else:    x_state= 0print("x_state= ",x_state)
查看完整描述

2 回答

?
慕慕森

TA贡献1856条经验 获得超17个赞

您的 if 语句仅检查periodic(60),而不检查 的倍数periodic。这应该可以达到你想要的效果:


periodic = 60

for i in range(200):

  print(i)

  x_state = 0

  if 0 <= i % periodic <= 5:

      x_state = 1

  print("x_state= ",x_state)

periodic在这里,我可以通过检查数字模数来计算 的任何倍数periodic。


查看完整回答
反对 回复 2024-01-15
?
红糖糍粑

TA贡献1815条经验 获得超6个赞

periodic = 60

for i in range(200):

  if (i % periodic >= 0) and (i % periodic <= 5):

    x_state = 1

  else:

    x_state = 0

  print(i, "x_state = ", x_state)


查看完整回答
反对 回复 2024-01-15
  • 2 回答
  • 0 关注
  • 107 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信