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的主要内容,如果未能解决你的问题,请参考以下文章

excel range函数

python基础语法range() 序列类型range

python基础语法range() 序列类型range

Python 3,range().append() 返回错误:'range' 对象没有属性'append'

为啥 range(0) == range(2, 2, 2) 在 Python 3 中为真?

Python range 数据类型 [学习 Python 必备基础知识][看此一篇就够了][range()][range 元素元素检测元素索引查找切片负索引][检测 range 对象是否相等](代码片