<分区>
有 Python 范围的初学者问题。
我正在尝试生成一个列表,但是当我输入时:
def RangeTest(n):
#
list = range(n)
return list
print(RangeTest(4))
打印的是 range(0,4)
而不是 [0,1,2,3]
我错过了什么?
提前致谢!
<分区>
有 Python 范围的初学者问题。
我正在尝试生成一个列表,但是当我输入时:
def RangeTest(n):
#
list = range(n)
return list
print(RangeTest(4))
打印的是 range(0,4)
而不是 [0,1,2,3]
我错过了什么?
提前致谢!
最佳答案
您使用的是 Python 3,其中 range()
返回“不可变序列类型”而不是列表对象 (Python 2)。
你会想要做的:
def RangeTest(n):
return list(range(n))
如果您习惯使用 Python 2,那么 range()
等同于 Python 2 中的 xrange()
。
顺便说一下,不要覆盖 list
内置类型。这甚至会阻止您使用 list()
,正如我在回答中所展示的那样。
关于Python range( ) 没有给我一个列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19268352/