有没有办法在Python中查看会话中声明的变量?

时间:2014-11-09 11:43:01

标签: python python-3.x

问题在于' Title',但为了完整性 -

假设:

>>> a= 23
>>> h ="Liam Neeson"
>>> k ={'a','b','c'}

是三个变量。然后我做了很多其他的事情。我想知道到目前为止我已经初始化了哪些变量,有没有办法做到这一点?会返回的东西

  
    
      

[A,H,K]。

    
  

2 个答案:

答案 0 :(得分:2)

如果您只想要用户定义的变量,可以使用dir并删除内置函数:

set(dir()) - set(dir(__builtins__)) - {'__builtins__'}

演示:

>>> a = 23
>>> h = "Liam Neeson"
>>> k = {'a', 'b', 'c'}
>>> set(dir()) - set(dir(__builtins__)) - {'__builtins__'}
{'a', 'h', 'k'}

答案 1 :(得分:1)

是的,使用dir()函数:

  

DIR([对象])   如果没有参数,则返回当前本地范围中的名称列表。使用参数,尝试返回该对象的有效属性列表。

示例:

>>> dir()
['__builtins__', '__doc__', '__name__', '__package__']
>>> a = 1
>>> dir()
['__builtins__', '__doc__', '__name__', '__package__', 'a']