搜索
写经验 领红包
 > 健康

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)r1

Out[16]:

range(1, 9, 2)

In [17]:

8 in r1

Out[17]:

False

In [18]:

7 in r1

Out[18]:

True

In [19]:

r1.index(3)

Out[19]:

1

In [20]:

r1[2]

Out[20]:

5

In [21]:

r1[1:3]

Out[21]:

range(3, 7, 2)

In [22]:

r1[-1]

Out[22]:

7

3. range()的比较

如果range()所呈现的序列是一样,则他们是相等,可以进行==,!=运算。即使它们所具有的参数是不一样的。

In [23]:

r2 = range(0)r3 = range(-2)

In [24]:

r2 == r3

Out[24]:

True

In [25]:

r1 == r2

Out[25]:

False

In [26]:

r4 = range(2, 7, 3)r5 = range(2, 6, 3)

In [27]:

r4 == r5

Out[27]:

True

In [28]:

r3 != r4

Out[28]:

True

本文内容由小洁整理编辑!