Python 这段简单的代码有什么问题?
Python 3.4中的代码有什么问题;我已经将原始输入切换到了输入Python 这段简单的代码有什么问题?,python,python-3.x,Python,Python 3.x,Python 3.4中的代码有什么问题;我已经将原始输入切换到了输入 它说的是无效的语法。我在Python2.7中编写了一个类似的程序,效果很好。我刚刚开始学习python,但我真的不知道如何让错误消息持续的时间超过一个flash 我要试试看。它并没有删除你期望它删除的所有项目,对吗 这是因为您在迭代列表时正在修改列表。删除项目时,它会向下移动所有剩余的项目。然后进入下一项。基本上,每次删除一个项目时,都会跳过下一个项目 最简单的解决方案可能是构建一个包含要保留的项的新列表,或者将切片分配回原始
它说的是无效的语法。我在Python2.7中编写了一个类似的程序,效果很好。我刚刚开始学习python,但我真的不知道如何让错误消息持续的时间超过一个flash 我要试试看。它并没有删除你期望它删除的所有项目,对吗 这是因为您在迭代列表时正在修改列表。删除项目时,它会向下移动所有剩余的项目。然后进入下一项。基本上,每次删除一个项目时,都会跳过下一个项目 最简单的解决方案可能是构建一个包含要保留的项的新列表,或者将切片分配回原始列表
def purify(lst):
for n in lst:
if n%2==1 :
lst.remove(n)
return lst
print (purify([2,3]))
input()
你有什么问题吗?具体点。你希望它做什么,发生了什么?这行有一个打字错误:print purify[2,3]]2 closing square brackets为什么我复制它时不知道y,它添加了一个额外的方括号。这不是问题所在。你发布的代码是有效的语法,除非你在缩进中混淆了空格和制表符。Python2允许您混合使用它们,但Python3将给出一个TabError。
def purify(lst):
print([n for n in lst if n % 2 == 0])