假設我已經定義了這樣的函數之前如何修改函數的當地人:稱其爲蟒蛇
def calc():
print x
而且我想我調用前注入變種X爲函數的局部用一些方法。
這看起來像我添加了關鍵字x,我可以使用函數calc()中的x而不定義它。而x將由調用calc()的外部函數定義。
也許這是一個愚蠢的問題,但我只想知道是否有可能做到這一點?
如果我們在調用它之前無法修改它的本地人,我們可以嘗試另一種方式嗎?也就是說,假設我們使用的裝飾或別的東西來自動修改FUNC()的定義,
def clac(x):
print x
也許這樣,我們需要用函數的字節碼玩?
有人可以提供一些建議嗎?
可能的重複[如何在Python中使用裝飾器將變量注入到作用域](http://stackoverflow.com/questions/17862185/how-to-inject-variable-into-scope-with-a-decorator-蟒蛇) –
@Zero Piraeus我看到,它似乎是同一個問題,但我發現下面的答案在我的文章比你提到的更好。 – Myrfy