2010-03-13 58 views

回答

7
[i/10.0 for i in range(-100,101)] 

(未在Python 3.x中所需的.0

+0

請注意'.'非常重要。在沒有'from __future__ import division'的Python 2中,這是必須的,而不是執行floor division。 –

+0

更好的是,做「.0」,因爲這使得它更明顯,然後一個小數點:) – Aea

0

numpy.arange可能成爲你的目的很好。

+0

我不認爲這是一個好主意,除非你不大量使用numpy。如果僅僅是爲了OP的目的,它可能會過度。 – Dacav

0
print(', '.join('%.1f' % x/10.0 for x in range(-100, 101))) 

應該做的正是你問(印刷部分,即!)在Python中的任何級別(一個相當長的過程的線 - 幾百個字符 - !)。您可以省略Python 2中的外部圓括號,可以省略Python 3中的.0位等,但是如圖所示的編碼將適用於Python發行版。

0

定義一個簡單的函數,例如:它使用generators

def frange(fmin, fmax, fleap): 
    cur=fmin 
    while cur<fmax: 
     yield cur 
     cur+=fleap 

呼叫,例如:

my_float_range=[i for i in frange(-10,10,.1)] 

某些完整性檢查(例如,fmin<fmax)可以被添加到函數的身體。