Python有+ =, - =,* =,%=等。这是否有通用形式?我想要尝试的第一件事是:
x = _ + 1
作为x+=1
的通用版本。我对此很好奇,因为我的实际代码现在看起来像这样:
a = x[y][z]
x[y][z] = f(a)
和x[y][z] = f( _ )
之类的东西在我的脑海中有意义,也许是我想要的东西,但不是。 Python中有类似的东西吗?
答案 0 :(得分:3)
不,没有,抱歉。我自己多次希望这样的事情。
答案 1 :(得分:1)
所以你可以做到这一点。虽然这是一个肮脏的黑客......
import inspect, sys
def getVariableAtBeginningOfLine():
lineNumber = inspect.currentframe().f_back.f_lineno
with open(sys.argv[0]) as f:
lines = f.read().split("\n")
#now we have the line we call the function on.
line = lines[lineNumber-1]
#do whatever we want with the line, in this case take the variable at the beginning of the line.
return eval(line.split()[0])
x = 10
print x #10
x = getVariableAtBeginningOfLine() + 1
print x #11