0 ile 1 arasında 0,1 adım atmanın bir yolu var mı?
Bunu aşağıdaki gibi yapabileceğimi düşündüm, ancak başarısız oldu:
for i in range(0, 1, 0.1):
print i
Bunun yerine, adım argümanının sıfır olamayacağını, ki beklemediğimi söylüyor.
itertools.takewhileve ve kullanılarak sarılabilir itertools.count. Yine de drangeperformans açısından daha iyi değil .
seqGNU coreutils'deki araç bile, seq 0 0.1 1yuvarlama hataları olmadan yapmanıza izin verir !
seqC kullanır long doubleiçten türü ve olduğunu yuvarlama hataları tabi. Benim makinede Örneğin, seq 0 0.1 1verir 1(beklendiği gibi) onun son çıkış olarak değil seq 1 0.1 2verir 1.9(beklenen ziyade son çıkış olarak 2).
itertools.takewhile(lambda x: (x+0.05)<1, itertools.count(0,0.1))veya uygulanabilir , ancak daha verimli olanı test etmedimitertools.islice(itertools.count(0,0.1), 10)import itertools