あなたの問題は翻訳しているようです:
print values from -startAngle to startAngle (startAngle included)
Pythonに。range
これを簡単に処理できます:
print(list(range(-startAngle, startAngle+1)))
正確に10個の値が必要なように見える場合を除いて、これにより2*startAngle+1
値が得られ(range(-a, a)
2aの値があり、これにはもう1つあります)、サンプルコードを入力すると、これらの10回すべてが出力されます。
の適切に選択されたstep
引数は、要素range
を提供することを保証できます。ステップは、整数が必要なため切り上げて、必要な値の数で割った未処理の範囲の値の数として必要です。numvalues
step
range
print(list(range(-startAngle, startAngle+1, math.ceil((2*startangle+1)/numvalues))
したがって、numvalues=10およびstartAngle=45は、次のようになります。
list(range(-45, 46, math.ceil((2*45+1)/10)))
[-45, -35, -25, -15, -5, 5, 15, 25, 35, 45]
Python 3を使用していることを前提としていることに注意してください。Python2では、次のことができます。
from __future__ import division
または、に設定numvalues
すると10.
、range(...)
の代わりに実行し、同じ効果の代わりにlist(range(...))
実行します。int(ceil(...))
ceil(...)
floatを処理する必要がある場合にも適切に機能する別の方法は、numpy.linspaceを使用することです-これは、のnum
代わりに引数を取り、step
デフォルトではそのエンドポイントを含みます-したがって、
numpy.linspace(-startAngle, startAngle, num=10)
あなたが直接欲しいものをあなたに与えるでしょう。