Python range( ) 没有给我一个列表

标签 python range

<分区>

有 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/

相关文章:

python - 在不使用嵌套循环的情况下查找所有 word2vec 编码对的余弦距离

r - 寻找数据框值的范围

javascript - 在内容丰富的中设置选择开始和结束

tsql - 对具有多个重复数据组的列进行分组

c++ - Range-for-loops 和 std::vector<bool>

Python List 对象属性 'append' 是只读的

python - 通过flask框架访问XAMPP中的MySQL数据库

Python - 当一个整数变量改变时,使第二个变量相同

python - 在使用 gensim 库进行训练时,Skip-gram word2vec 和 CBOW w2v 有什么区别?

excel - 存储在单个单元格 excel 中的范围的最后更新日期