我想将一个数字 y 添加到 x,但让 x 环绕以保持在 0 和 48 之间。注意 y 可能是负数,但幅度永远不会大于 48。有没有比这样做更好的方法:
x = x + y
if x >= 48:
x = x - 48
elif x < 0:
x = x + 48
?
x = (x + y) % 48
模运算符是您的朋友。
>>> 48 % 48
0: 0
>>> 49 % 48
1: 1
>>> -1 % 48
2: 47
>>> -12 % 48
3: 36
>>> 0 % 48
4: 0
>>> 12 % 48
5: 12
不仅(x+ y)% 48
适合你。在此处查看有关模数的更多信息。
如果你在做模运算,你只需要使用模运算符。
x = (x + y) % 48
您可以使用模运算符:
x = (x+y) % 48
你可以使用
x = (x+y) % 48
这将使您x
对任何数字都产生积极影响。
(x + y) % 48
随意替换 48。
您还可以创建一个类来处理模运算,就像这里所做的那样:http:
//anh.cs.luc.edu/331/code/mod_arith.py http://anh.cs.luc.edu/331/
代码/mod.py