假设我有list参数的功能,并且在我想要修改传递列表的内部,通过以下代码:
spy = [0,0,7]
def replace_spy(lista):
return lista[2]=lista[2]+1
但它显示错误:SyntaxError: invalid syntax
答案 0 :(得分:5)
作业是一种陈述,而不是表达。它没有任何价值。因此,您无法return
作业的价值。
在做的语言允许这种事情的情况下,返回值的确切含义是多么模糊,但其中大多数 - 包括C和C语言衍生或启发的许多语言都会给出你是lista[2]
1 的新值。所以大概你想要这个:
def replace_spy(lista):
lista[2]=lista[2]+1
return lista[2]
如果您希望缩短内容,可以减少击键次数,并且可能更具可读性:
def replace_spy(lista):
lista[2] += 1
return lista[2]
<子> 1。作为“左值”,但这在Python中并不是一件有意义的事情。