我正在尝试编写一个Python 3函数,该函数将过滤列表和pop()
所有字符串项。但是当我尝试编写以下函数时:
def filter_list(l):
for i in l:
type_item = type(l[i])
if type_item == "class str":
l.pop(i)
return l
我收到一条错误消息:
File "/home/codewarrior/solution.py", line 3, in filter_list
type_item = type(l[i])
TypeError: list indices must be integers or slices, not str
我相信此方法的返回不是str
,但是我还没有找到任何文档可以告诉我如何检查返回是否为字符串。谢谢!
您可以使用列表推导以更简单的表达式来实现。查看以下代码。它将从您的初始列表中过滤掉所有字符串:
start_list = ["test", 1, 2]
filtered_list = [i for i in start_list if type(i) is not str]
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句