Không có sẵn trong dung dịch, nhưng có lẽ là một cách tốt để giải quyết nó là xác định riêng range
chức năng của bạn:
def my_range(start, end, how_many):
incr = float(end - start)/(how_many - 1)
return [start + i*incr for i in range(how_many)]
Và bạn có thể sử dụng nó trong một cho vòng lặp:
>>> for i in my_range(-1, 1, 10):
... print i
...
-1.0
-0.777777777778
-0.555555555556
-0.333333333333
-0.111111111111
0.111111111111
0.333333333333
0.555555555556
0.777777777778
1
EDIT: Như @NiklasBaumstark đã đề xuất, nếu chức năng mới của bạn my_range
sẽ xử lý một số lượng lớn các số, có thể là ý tưởng hay khi sử dụng generators. Vì mục đích đó, chúng tôi sẽ làm chỉ là một chút thay đổi:
def my_xrange(start, end, how_many):
incr = float(end - start)/(how_many - 1)
return (start + i*incr for i in xrange(how_many))
câu hỏi liên quan: http://stackoverflow.com/questions/8652006 – juliomalegria