pytho中age(pytho中age()函数的用法)
导语:Python笔记 range()详解
内置函数range()太重要了,使用的频率也相当地高,与各种语句搭配使用,构成各种Python程序。
python range
range()详解range()函数内置于Python3中,用于构建不可变的数字序列对象,一般和for循环搭配用于遍历。
1. range()的4种形式
range()的参数必须是int或者任何可以执行__index__的对象,如果参数被忽略,默认就是1。参数可是以正也可以是负。但至少要有一个参数。
1.1 range(start, stop,step)
start 开始于,包含本身stop 结束于,不包含本身step 步进,元素之间的间隔,默认是1start到stop的方向必须与step的方向一致,否则会返回空。即step的正负必须与stop一致。In [1]:
list (range(2, 10, 3)) 从-1开始以-3为步进至-10
Out[2]:
[-1, -4, -7]
In [3]:
list (range(-5, 3, 2)) 从3开始以-4为步进至-8
Out[4]:
[3, -1, -5]
In [5]:
list (range(-2, -6, 2)) 以-2开始-3为步进至6是不可能的,返回空
Out[6]:
[]
In [7]:
list (range (len([]), len((1,2,3)), len('Py')))
Out[7]:
[0, 2]
1.2 range(start, stop)
只写二个参数,默认第一个是start,第二个是stop忽略step,若stop为正,则默认step为1若stop为负,则step不可忽略,否则均返回空值。In [8]:
list (range(1, len('Python')))
Out[8]:
[1, 2, 3, 4, 5]
In [9]:
list (range(-3, -7))
Out[9]:
[]
In [10]:
list (range(-3, 7))
Out[10]:
[-3, -2, -1, 0, 1, 2, 3, 4, 5, 6]
In [11]:
list (range(3, -7))
Out[11]:
[]
In [12]:
list (range(3, -7, -2))
Out[12]:
[3, 1, -1, -3, -5]
1.3 range(stop)
只写一个参数,默认是stop忽略start与step,若stop为正,则默认start=0, step=1若只写一个负参数,默认返回空。In [13]:
list (range(4))
Out[13]:
[0, 1, 2, 3]
In [14]:
list (range(-4))
Out[14]:
[]
1.4 range(0) 与 range()
range(0) 返回空对象range()报错,range()必须至少有一个参数In [15]:
list (range(0)) range()报错,必须有一个参数2. range类型的优势与作用
相比于列表或者元组,range所占的内容总是一样的,只有三个参数,start/stop/step,不管它实际的大小是多少,它始终只点三个值,想想列表与元组,实际有多大,就有占多少值,range实在是太省内存了。
range用于包含测试,元素索引查找及切片等
In [16]:
r1 = range (1, 9, 2)r1Out[16]:
range(1, 9, 2)In [17]:
8 in r1Out[17]:
FalseIn [18]:
7 in r1Out[18]:
TrueIn [19]:
r1.index(3)Out[19]:
1In [20]:
r1[2]Out[20]:
5In [21]:
r1[1:3]Out[21]:
range(3, 7, 2)In [22]:
r1[-1]Out[22]:
73. range()的比较
如果range()所呈现的序列是一样,则他们是相等,可以进行==,!=运算。即使它们所具有的参数是不一样的。
In [23]:
r2 = range(0)r3 = range(-2)In [24]:
r2 == r3Out[24]:
TrueIn [25]:
r1 == r2Out[25]:
FalseIn [26]:
r4 = range(2, 7, 3)r5 = range(2, 6, 3)In [27]:
r4 == r5Out[27]:
TrueIn [28]:
r3 != r4Out[28]:
True
本文内容由小洁整理编辑!