range有关的用法
python3.X range的返回值是一个可迭代的对象(不是数组),所以通常返回的值不能直接打印需要 转换进行打印(使用list()、tuple()、set()函数转换),一般配合for循环使用;
python2.X range的返回值是一个数组,可以直接打印;
1. range的基本使用
>>> print(list(range(10))) #数组 默认起始值为0
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> print(tuple(range(10))) #元组 默认起始值为0
(0, 1, 2, 3, 4, 5, 6, 7, 8, 9)
>>> print(set(range(10))) #集合 默认起始值为0
{0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
>>> print(list(range(1, 5))) #其中range函数中的1为起始值,默认的步长为1(步长可以为负数)
[1, 2, 3, 4]
>>> print(list(range(1, 0)))
[]
>>> print(list(range(1, 5, 2))) #其中2为设定的步长 从1开始到5结束(不包括5)
[1, 3]
>>> print(list(range(5,1,-2))) #其中-2为设定的步长 从5开始到1结束(不包括1)
[5, 3]
>>> print(list(range(5,-2,-2))) #其中-2为设定的步长 从5开始到-2结束(不包括-2)
[5, 3, 1, -1]
>>> print(list(range(0)))
[]
2. 结合for循环使用
#循环5次python
for i in range(5) :
print("python")
输出结果:
python
python
python
python
python
#循环出每个字母
X = 'PYTHON'
for i in range(len(X)) :
print(X[i])
输出结果:
P
Y
T
H
O
N
#循环数组每个字符
list = ['1', '2', '3', '4']
for i in range (len(list)) :
print(list[i])
输出结果:
1
2
3
4
#循环数组每个数字
for i in range (1, 5):
print (i)
输出结果:
1
2
3
4
#循环求1~100的和
b = 0
for i in range(1, 101):
b += i
print(b)
输出结果:
5050