作为
python的初学者,我试图在IDLE终端中测试函数range().
我在终端上写了下面发布的代码,我希望看到这样的结果:
range(10)==>[0,1,2,3,4,5,6,7,8,9]
但不幸的是,我没有得到预期的结果
我试过的Python代码:
range(10) print(range(10))
来自shell的结果:
>>> print(range(10))
解决方法
在python 3中,range()返回一个生成器,这就是它向您显示对象而不是值的原因:
>>> print(range(10)) range(0,10)
如果您期望列表,则需要在打印前将其转换为一个列表:
>>> print(list(range(10))) [0,9]
生成器一次只创建一个值以节省内存.您可以阅读它们here,其中包含适合您的测试用例的示例.