我需要在循環(huán)中定期更新變量,在循環(huán)中我需要根據(jù)這些范圍設(shè)置變量值(X_state)。例如,如果我有一個(gè)從 1 開始到 200 的循環(huán),并且每當(dāng)范圍的開始代表 60 的倍數(shù)且結(jié)束等于 start+5 時(shí),我需要將變量 X_state 設(shè)置為從 0 到 1。因此,我不確定如何在本例中從 60 開始更新到 65,然后從 120 開始更新到 125,從 180 開始更新到 185。它僅適用于我的第一個(gè)范圍,即 [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貢獻(xiàn)1856條經(jīng)驗(yàn) 獲得超17個(gè)贊
您的 if 語句僅檢查periodic(60),而不檢查 的倍數(shù)periodic。這應(yīng)該可以達(dá)到你想要的效果:
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在這里,我可以通過檢查數(shù)字模數(shù)來計(jì)算 的任何倍數(shù)periodic。

紅糖糍粑
TA貢獻(xiàn)1815條經(jīng)驗(yàn) 獲得超6個(gè)贊
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)
添加回答
舉報(bào)
0/150
提交
取消