2012-11-24 34 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