Python - TypeError:不可用的类型列表错误

时间:2013-07-03 15:28:15

标签: python list-comprehension

我正在尝试创建一个理解,它在列表中获取每个值n并返回1-n中的值。 I.E.对于[1,2,4],返回值应为[[1],[1,2],[1,2,3,4]]。 我的代码收到此unhashable type list错误。

 {range(x) for x in {1,2,4}}

1 个答案:

答案 0 :(得分:6)

大括号 - {} 会创建一个传递给它的元素集。要创建列表,您需要使用括号 - []

[range(x) for x in [1,2,4]]

要获得所需的输出,您需要稍微更改range()range(2)会为您[0, 1]而不是[1, 2]

您可以使用:

>>> [range(1, x+1) for x in [1, 2, 4]]
[[1], [1, 2], [1, 2, 3, 4]]