我正在尝试创建一个从1到21的列表并将它们提供给3d。在学校我可以做到,但我下载了一个更新的版本,现在我收到以下错误: for **或pow():'list'和'int' 这是我的代码:
A=[range(21)]
print A
[[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]]
In [14]:
A2=[x**3 for x in A]
print A2
--------------------------------------------------------------------------- TypeError Traceback (most recent call last) in () ----> 1 [x**3 for x in A] 2 print A2 TypeError: unsupported operand type(s) for ** or pow(): 'list' and 'int'
我正在使用ipython JUPYTER
答案 0 :(得分:2)
第一行应该是:
A=range(21)
(即删除方括号[]
。
你拥有它的方式,你已经制作了一份列表"。您需要一个数字列表,而range()会返回该数字。
答案 1 :(得分:0)
设置
时A = [range(21)]
将列表A的第一个元素设置为列表(A的打印值是列表中的列表)。为防止这种情况,请使用
A = range(21)
其余代码没问题。