五、range、enumerate、tuple元组。
一、range函数使用方法
1.1:语法
range(start,stop,step)
- start: 计数从 start 开始。默认是从 0 开始。例如range(5)等价于range(0, 5);
- stop: 计数到 stop 结束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5
- step:步长,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)
1.2:实例
>>>range(10) # 从 0 开始到 10 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] >>> range(1, 11) # 从 1 开始到 11 [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] >>> range(0, 30, 5) # 步长为 5 [0, 5, 10, 15, 20, 25] >>> range(0, 10, 3) # 步长为 3 [0, 3, 6, 9] >>> range(0, -10, -1) # 负数 [0, -1, -2, -3, -4, -5, -6, -7, -8, -9] >>> range(0) [] >>> range(1, 0) []
1.3:range函数使用方法
range()函数内只有一个参数,则表示会产生从0开始计数的整数列表:
>>> range(4)
[0, 1, 2, 3]
python range中,当传入两个参数时,则将第一个参数做为起始位,第二个参数为结束位:
>>> range(0,5)
[0, 1, 2, 3, 4]
range()函数内可以填入三个参数,第三个参数是步进值(步进值默认为1):
>>> range(0,10,3)
[0, 3, 6, 9]
range函数的参数和结果也并非一定要是正数或是递增的,好比下面两个例子:
>>> range(-4,4)
[-4, -3, -2, -1, 0, 1, 2, 3]
>>>
>>> range(4,-4,-1)
[4, 3, 2, 1, 0, -1, -2, -3]
1.4:range()在for循环中的作用及技巧
range可以根据给定的次数,重复动作;
计算1-100之间所有数的和
n=0
for x in range(101):
n=n+x
print(n)

打印五遍我最帅哈哈
for i in range(5):
print("我","最","帅","哈哈")
print(range(100)) for i in range(100): print(i) #输出结果为: 0 1 . . . 99
for i in range(1,11): print(i) #输出结果为: 1 2 3 4 5 6 7 8 9 10
for i in range(2, 101, 2): print(i) #输出结果为: 2 4 6 8 10 . . . 98 100
for i in range(100,0,-1): print(i) #输出结果为: 100 99 98 . . . 3 2 1
l1 = [1, 2, 3, 4, 5, 'alex'] for i in range(len(l1)): print(i) #输出结果为: 0 1 2 3 4 5
二、enumerate()用法
- 枚举,对于一个可迭代的(iterable)/可遍历的对象(如列表、字符串),enumerate将其组成一个索引序列,利用它可以同时获得索引和值;
- 将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中;
li = ['alex','银角','女神','egon','太白']
for i in enumerate(li):
print(i)
for index,name in enumerate(li,1):
print(index,name)
for index, name in enumerate(li, 100): # 起始位置默认是0,可更改
print(index, name)
>>>seasons = ['Spring', 'Summer', 'Fall', 'Winter'] >>>list(enumerate(seasons)) [(0, 'Spring'), (1, 'Summer'), (2, 'Fall'), (3, 'Winter')] >>>list(enumerate(seasons, start=1)) # 小标从 1 开始 [(1, 'Spring'), (2, 'Summer'), (3, 'Fall'), (4, 'Winter')]
#普通的 for 循环 >>>i = 0 >>>seq = ['one', 'two', 'three'] >>>for element in seq: ... print(i, seq[i]) ... i += 1 ... 0 one 1 two 2 three #for 循环使用 enumerate >>>seq = ['one', 'two', 'three'] >>>for i, element in enumerate(seq): ... print(i, seq[i]) ... 0 one 1 two 2 three >>>
三、tuple元组
- 元组,只读列表。
tu = (1, 2, 33, 'alex') print(tu[1]) print(tu[:-1]) for i in tu: print(i) tu1 = (1, 2, [1, 3,], 4) tu1[2].append(666) print(tu1) #输出结果为: 2 (1, 2, 33) 1 2 33 alex (1, 2, [1, 3, 666], 4)
作者:HaydenGuo
出处:https://www.cnblogs.com/ghl1024/
每一个前十年都想不到后十年我会演变成何等模样,可知人生无常,没有什么规律,没有什么必然。
只要我还对新鲜的知识、品格的改进、情感的扩张、有胃口,这日子就是值得度过的。

浙公网安备 33010602011771号