用户:
程序侯查看:8 回复:7 评论:8 创建时间:2020-06-07T17:31:37
众所周知,使用range函数生成的列表打印出来不是一个列表,而是一个range(,,):
print(range(5))
>>>range(0, 5)
print(range(1, 101))
>>>range(1, 5))
print(range(10, 201, 2))
>>>range(10, 201, 2)
(不知道请自行补习功课)
但它又和list、tuple、dist、str和set一样可迭代,也是序列类型:
var = [1, 3.14, [1, 5, 9]]
for i in var:
print(i)
>>>1 3.14 [1, 5, 9]
var = (1, 1, 2, 3, 5, 8, 13)
for i in var:
print(i)
>>>1 1 2 3 5 8 13
var = {1 : 2, 3 : 4}
for i in var:
print(i)
>>>1 3
var = 'abcde'
for i in var:
print(i)
>>>a b c d e
var = {1, 2, 3, 4, 5}
for i in var:
print(i)
>>>1 2 3 4 5
var = rsnge(10)
for i in var:
print(i)
>>>0 1 2 3 4 5 6 7 8 9
这个range还真有点意思,不是吗?今天,我们就来解密一下range的真面目!
print(type(range(5)))
<<< <class 'range'>
(内置函数type用于获得变量类型,不知道请自行补习功课)
这说明了什么?range不是list,不是tuple,它是一个独立的变量类型——range!

不管咋滴。。。
这是真的!
>>> print(type(range(5)))
<class 'range'>
>>> # 嗯?
>>> a = range(5)
>>> print(type(a))
<class 'range'>
>>> # 奥利给!!!range!点赞0
评论
怪的就是...
我从来没见识过'range'这种类型的变量!
(续上行代码)
>>> i = 0
>>> for i in a:
print(i)
0
1
2
3
4
>>> # 可迭代?点赞0
评论