2012-11-24 36 views
0

我想在python中編寫一長串數字,但我不想一個接一個地輸入數字,因爲那很無聊。那麼,我該怎麼做?對於那些熟悉MATLAB的人,我想寫一些看起來像1:100的東西,但我不知道如何用python編寫它! 順便說一下,我可以在一個循環中追加一個元素列表的數字,但我正在尋找大部分內置操作符的東西。長號碼列表

回答

5

你想要內建range功能嗎?

>>> range(1,10) 
[1, 2, 3, 4, 5, 6, 7, 8, 9] 
>>> range(1,10,2) 
[1, 3, 5, 7, 9] 

在Python 3.x中,range不返回一個列表了,它返回一個range object。範圍對象的行爲與列表有很多相似之處,但它們實際上並不是列表。如果你真的需要在Python 3.x都有一個清單,你可以使用list(range(...))

numpy的也有類似功能arange將與花車以及工作:

>>> np.arange(1,2,.1) 
array([ 1. , 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 1.7, 1.8, 1.9]) 
+2

您可能還需要補充一點'range'返回Python 2中的列表和Python 3中的生成器。 – MRAB

+0

就是這樣。謝謝。 –

+0

@MRAB - 小心地稱它爲發電機。範圍內的對象就像發電機一樣,但有微妙的差異。在很多方面,它們都比較酷,但是你不能'next(range(10))',並且如果'range'返回一個實際的發生器對象,就可以像你一樣工作。 – mgilson