python - 什么是 <class 'range' >

标签 python python-2.7 python-3.x range

Python3:

string = range(10)
print("{}".format(type(string)))

输出:

class 'range'

我只是对这个类“范围”感到好奇。 谁能解释一下?

但是在 Python2 中:

输出:

class 'list'

好吧,这是不言自明的

最佳答案

在 Python 2 中,range(val) 生成一个列表实例,它 simply a function .因此 type(range(10)) 将返回 class 'list'

在 Python 3 中,range相当于xrange在 Python 2 中,它返回一个名为 range 的新类的实例。有关 Python 2/3 之间的更多更改/差异,请参阅 PEP 3100 .

关于python - 什么是 <class 'range' >,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39241877/

相关文章:

python - 在字典中解包元组

python - 高效地找到对象中的最高值,并识别对象

python - while循环不在python中退出

python - Django查询关系

Python poplib error_proto : line too long

python-3.x - '[Errno 26] 文本文件忙 : '/home/*****/.wdm/drivers/chromedriver/83.0.4103.39/linux64/chromedriver' '

Python "for in"循环打印列表中的最后一项

python - 在 Pandas 中查找项目最接近给定值的列名称

Python 警告被视为错误,无法禁用

google-app-engine - 如何在gae中使用光标进行搜索?