错误:“int”对象不可下标。 ***python-jupyter_notebook

时间:2021-06-02 10:29:16

标签: python list function for-loop

我试图创建一个接受输入列表(混合类型)并仅从列表中提取数字的函数。 我不断收到此“int”对象不可下标错误。

List = ['M',1,'N',2,'0',3.5]
a_List = [x[:3] for x in List if type(x)!= str]
print(a_List)

2 个答案:

答案 0 :(得分:2)

此时,x 是符合条件的整数,您不能对整数进行切片。 尝试 x 而不是 x[:3]

Listt = ['M',1,'N',2,'0',3.5]
a_List = [x for x in Listt if type(x)!= str]
print(a_List)
>> [1, 2, 3.5]

答案 1 :(得分:2)

您可以使用列表推导式。

List = ['M',1,'N',2,'0',3.5]
list_2 = [num for num in List if isinstance(num, (int,float))]