编程语言
首页 > 编程语言> > 返回行末的python-语法错误-]

返回行末的python-语法错误-]

作者:互联网

def filter_list(l):
##newList = []
##for x in l:
##    if isinstance(x, int):
##        newList.append(x)
##return newList

return [x in l if isinstance(x, int)]
                                    ^

抱歉,如果这是重复的,但我没有看到任何其他有帮助的语法错误帖子.注释的代码有效,而未注释的代码在最后一个[]上给出了语法错误.我认为清单理解是正确的,但我不一定要在这里问这个.为什么在]上出现语法错误?

解决方法:

您的列表理解语法不正确.也许您打算使用(假设l是可迭代的):

[x for x in l if isinstance(x, int)]

等效于:

out = []
for x in l:
    if isinstance(x, int):
        out.append(x) 

标签:syntax-error,python
来源: https://codeday.me/bug/20191110/2013742.html