range()类

range(start,end,step)是一种类,它返回可迭代的(iterable)对象,用for...in这样的代码结构,可以遍历或操作这个可迭代对象,从而产生特定的 自然数 整数序列

在python2,range()是一个更容易理解简单函数,直接返回一个列表,为什么python3要做这样的变化,当你玩转python3的range之后你会找到答案

产生一个0~10的偶数和1-9的奇数列表,

>>> print([i for i in range(0,11,2)])
[0, 2, 4, 6, 8, 10]
>>> print([i for i in range(1,10,2)])
[1, 3, 5, 7, 9]

[expression for item in iterable]这样的表达式叫“推导式”,推导式可以从一个或多个迭代器中快速、简洁地创建数据结构,这里利用了列表推导式

产生一个0~10的偶数和1-9的奇数列表,

>>> print([i for i in range(0,11) if i % 2 == 0])
[0, 2, 4, 6, 8, 10]
>>> print([i for i in range(0,11) if i % 2 == 1])
[1, 3, 5, 7, 9]

[expression for item in iterable if condition]这推导式可以依照条件来创建迭代序列

产生一个-6到6的整数列表

>>> list(range(-6,7))
[-6, -5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6]

list(iterable)函数将传入的可迭代对象参数转化成列表。