python中的int对象不可下标错误

python中的int对象不可下标错误,python,Python,如果要展平shllow列表,我的代码:- 我犯了一个错误 int对象不可下标 首先通过str()将输入作为字符串,然后将其存储在l中后,使用list()将其转换为列表 您还可以直接将输入转换为列表(输入(“文本”)) 1) 。在这里,您必须在按空格键后输入值,如25,然后按空格键,然后按下一个数字,等等 2) 。它将给出列表的总和,这与列表的展平相同。使用以下代码: l = list(map(int, input("Enter a nested list : ").split())) total

如果要展平shllow列表,我的代码:- 我犯了一个错误

int对象不可下标


首先通过str()将输入作为字符串,然后将其存储在l中后,使用list()将其转换为列表

您还可以直接将输入转换为列表(输入(“文本”))

1) 。在这里,您必须在按空格键后输入值,如
25,然后按空格键,然后按下一个数字,等等

2) 。它将给出列表的总和,这与列表的展平相同。

使用以下代码:

l = list(map(int, input("Enter a nested list : ").split()))
total = 0
for i in l:
    total += i

print(total)
输出

Enter a nested list : 1 2 3
6

a=len(l)
a是一个整数
a[x]
没有意义。你是说
l[x]
?什么是肤浅的列表?2D列表?如果您显示正在使用的特定输入,而不是使用
input
,我们将更容易为您提供帮助。你可能是说
l[x]
而不是
a[x]
eval
与用户输入一起使用是危险的。@Austin是的,但在Python 2中
input()
是指
eval(input())
。回顾过去,它几乎是愚蠢的:)尽管,我想说,
eval
很好,只要它不出现在生产代码中,并且被用作快速测试语言特性的一种方法。也就是说,如果目标只是解析一些嵌套的整数、浮点数或字符串列表,
json.loads(input())
可能是最好的选择。如果您可以向OP提供一些代码来说明您所描述的内容是如何工作的,这将非常有用
l = list(map(int, input("Enter a nested list : ").split()))
total = 0
for i in l:
    total += i

print(total)
Enter a nested list : 1 2 3
6