基础语法
range(start, stop[, step])
语法讲解
- 主要用来生成数字,生成的是对象,常用于for循环
- 英文圆括号作包裹,英文逗号作间隔
- start表示生成数范围的开始(闭区间,包括这个数字本身)
- stop表示生成数范围的结束(开区间,不包括这个数字本身)
- step表示生成数的间隔跨度(生成数的后一个数减去前一个数=step)
实践出真知(附特殊说明)
注:运行代码使用的是python3.9版本
eg1.三个参数,生成
正负数均可
i = range(-5, 15, 3)
print(list(i))
运行结果:[-5, -2, 1, 4, 7, 10, 13]
eg2.区间为左闭右开
i = range(0, 15, 3)
print(list(i))
运行结果:[0, 3, 6, 9, 12]
eg3.几种形式转换
i = range(-5, 15, 3)
# 直接打印输出i
print(i)
# 用list函数将rang对象转换为列表
print(list(i))
# 用type函数查看range对象的数据类型
print(type(i))
# 用tuple函数将range对象转换为元组
print(tuple(i))
运行结果:
range(-5, 15, 3)
[-5, -2, 1, 4, 7, 10, 13]
<class 'range'>
(-5, -2, 1, 4, 7, 10, 13)
eg4.一个参数,生成
会将该数字默认当做stop
i = range(5)
print(list(i))
运行结果:[0, 1, 2, 3, 4]
eg5.两个参数,生成
会默认step数字跨度为1
i = range(5, 13)
print(list(i))
运行结果:[5, 6, 7, 8, 9, 10, 11, 12]
eg6.start比stop大/相等
# start > stop的时候
i = range(20, 10, 3)
print(list(i))
# start = stop的时候
i = range(20, 20, 3)
print(list(i))
两种情况的运行结果相同:[]
部分参考了文章
42. Python range函数—生成器函数