range
Posted 牧羊龟
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了range相关的知识,希望对你有一定的参考价值。
range
range是一种创建包含可枚举元素等差序列的list的方法
要创建一个包含从1到20的所有自然数的list,只需写
[1..20]
它相当于
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
还可以创建字符list,如下
[\'a\'..\'z\']
[\'K\'..\'Z\']
指定range的步长,需要用逗号分隔前两个元素,然后指定上限。如下
[2, 4..20]
[3, 6..20]
创建一个包含从20到1的所有数字的列表,如下
[20, 19..1]
建议不要使用带浮点数的range
无限列表
可以使用range创建无限列表,只需要不指定上限,如下
[1..]
take 10 [10, 20..]
cycle函数
cycle函数接受一个list,并创建这个list的无限循环,如果试图显示结果,它将永远不会结束,必须在某个地方剪切它,如下
take 10 (cycle [1, 2, 3])
[1,2,3,1,2,3,1,2,3,1]
repeat函数
repeat函数接受一个元素,并生成一个包含该重复元素的无限列表,相当于用单一的元素循环一个list,如下
take 10 (repeat 5)
[5,5,5,5,5,5,5,5,5,5]
当然,这里使用replicate函数会获得相同的结果,如下
replicate 10 5
[5,5,5,5,5,5,5,5,5,5]
range()函数
# print(range(1,13))
range(1,13)
为什么打印之后还是range(1,13)
因为range(1,13)是range类型
print(type(range(1,13)))
<class ‘range‘>
想要打印range(1,13)中的数据,可以使用list强转
print(list(range(1,13)))
[1,2,3,4,5,6,7,8,9,10,11,12]
以上是关于range的主要内容,如果未能解决你的问题,请参考以下文章
Python 3,range().append() 返回错误:'range' 对象没有属性'append'
为啥 range(0) == range(2, 2, 2) 在 Python 3 中为真?
Python range 数据类型 [学习 Python 必备基础知识][看此一篇就够了][range()][range 元素元素检测元素索引查找切片负索引][检测 range 对象是否相等](代码片