1

我有一个这样的列表:

_list=[50,100]

python中是否有一个内置函数,它将获取一个“步”值并创建一个新列表,该列表将包含每一步增加后的所有值。新列表应如下所示:

step=2
_list=[50,52,54,56,58,60,62.....100]
4

3 回答 3

8

只需使用内置range(start,stop[,step])功能:

_list = range(50,101,2)
print _list
#[50, 52, 54, 56, 58, 60, 62, 64, 66, 68, 70, 72, 74, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, 96, 98, 100]

range注意:如果你想知道我为什么放 101 而不是 100,那是因为在and函数中都省略了端点,xrange而且参数step是可选的

于 2013-10-25T10:33:02.127 回答
3

您应该使用该xrange功能

xrange(50, 101, 2)

用法可以在这里找到,如下:

xrange(start, stop[, step])

如果您不迭代列表或在 Python 3 下工作,则应该使用range而不是。xrange

于 2013-10-25T10:32:39.173 回答
0

但这只是使用步长值生成列表,您不能在此上下文中扩展列表。

扩展在 python 中是完全不同的东西,列表 http://docs.python.org/2/tutorial/datastructures.html#more-on-lists

于 2013-10-25T12:02:58.247 回答