2014-03-05 91 views
0

我大概有一個非常簡單的問題:是否可以打印變量賦值的價值無需重新輸入變量名?打印變量賦值作爲輸出

我的意思是,當我們進入我們說:

foo = 5 

我們得到以下的輸出:

5 

我試着像foo = 5;東西(好像我是用MATLAB - 實際上它隱藏了輸出)但是,找不到這樣做的任何字符。即使在教程中,我看到了這一點,但沒有提到。

+0

非常感謝,但我有很多很多的局部變量。在我的代碼中,我需要追加它,vstack等等。如果我可以在調試過程中獲得指定的值,而不需要重新輸入變量名稱(我沒有使用任何Eclipse開發環境),那將會非常好。 –

回答

0

不,這在Python中是不可能的。變量賦值不返回任何內容:

>>> print(exec("a = 1")) 
None 
>>> a 
1 
>>> 
+0

好的,謝謝。顯然,這就是我找不到它的原因...... –

1

最接近你可以得到這個是創建一個類覆蓋__setattr__方法。

class A(): 
    def __setattr__(self,name,value): 
     print(value) 
     self.__dict__['name'] = 1 
a = A() 
a.x = 1 
1