将变量赋值打印为输出

时间:2014-03-05 16:11:34

标签: python variables

我可能有一个非常简单的问题:是否可以在不重新输入变量名的情况下打印变量赋值?

我的意思是,当我们进入时,让我们说:

foo = 5

我们得到以下输出:

5

我尝试了foo = 5;之类的东西(好像我使用的是MATLAB - 实际上它隐藏了输出)但是,找不到任何能够做到这一点的角色。即使在我看过的教程中,也没有提及。

2 个答案:

答案 0 :(得分:1)

最接近你可以创建一个覆盖__setattr__方法的类。

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

答案 1 :(得分:0)

不,这在Python中是不可能的。变量赋值不会返回任何内容:

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