为什么在给定数据类型“范围”的变量上使用“类型”功能时仍显示为“列表”?

时间:2019-10-19 08:19:55

标签: python python-2.7

在Python中研究数据类型时,我遇到了一个数据类型范围,并使用了一个变量对其进行定义。但是,使用类型函数了解这一点仍会表明它是列表数据类型。

我在这里错过了什么吗?请指导。非常感谢。

x = range(3)
print(type(x))

输出如下所示:

C:\Python27>python.exe learn.py
<type 'list'>

2 个答案:

答案 0 :(得分:2)

似乎您正在混合使用Python 3和2。这是Python的两个主要版本。 Python 3000引入了许多有意向后不兼容的更改,包括工作中的更改 范围函数。

在Python 2中,范围函数立即扩展到列表 list_range = list(range(3))

在Python 3中,这只是对范围数据类型的映射。

在此处查看官方文档[https://docs.python.org/3.0/whatsnew/3.0.html]

这与内存有关。

答案 1 :(得分:1)

使用Python2,range返回列表。

如果您尝试使用python3运行代码,它将返回“范围”类型作为代码的输出。