我希望能夠做到以下幾點...變量+ =%可能或如何獲得另一個數字後面的數字的下一個區間
說我想要一個100- 500是33
>>> a = 100
>>> b = 500
>>> range(a,b,33)
[100, 133, 166, 199, 232, 265, 298, 331, 364, 397, 430, 463, 496]
這多是不是我想要的,這是因爲a
不是33
倍數,以獲得33 a
下一個倍數我可以這樣做:
a = a - a % 33 + 33
我想知道是否有這樣做這樣一個簡單的方法,如果我要創建這個範圍不知道實際值,也無需事先定義它們..
如:
>>> def multiple(a, b, c):
return range(a+=%c, b, c) #if this was possible
而且很明顯這將返回我這將是一個正確的範圍,例如:
>>> multiple(100, 500, 33)
[132, 165, 198, 231, 264, 297, 330, 363, 396, 429, 462, 495]
我知道我可以做喜歡的事很簡單:
range(a - a%c + c, b, c)
然而,如果沒有進入細節,要求的a
值對我來說貴於我而言,我希望能夠找到一種方法,沒有把它稱爲第二次,也上面的方法真的不好看。
我真的不知道我的問題的標題應該是什麼,但我想我正在尋找的是一種方法來查找下一個數字的下一個倍數後的另一個給定的數字。
謝謝。
應該是什麼的結果'多(66,132,33)'? – NPE
@NPE很好的問題,它應該是[66,99,132] –
爲什麼不簡單地存儲一個變量,所以你可以使用它兩次沒有加載它兩次? – jcr