Python打印变量名
时间: 2023-08-14 14:37:38 浏览: 156
Python中的变量
在Python中,变量本身并没有名字,只是一个内存地址的引用。但是,我们可以通过变量名来访问这个内存地址的内容。如果想要在程序运行时打印变量名,可以使用`locals()`或`globals()`函数,它们会返回当前作用域内所有的变量名和对应的值。例如:
```python
a = 123
b = "hello"
c = [1, 2, 3]
print([name for name in globals() if globals()[name] is c])
```
上述代码中,我们定义了三个变量`a`、`b`、`c`,然后使用`globals()`函数获取当前作用域内所有的变量名和对应的值,最后使用列表推导式找到值为`c`的变量名,并打印出来。这里使用`globals()`函数是因为`c`是在全局作用域中定义的,如果是在局部作用域中定义的变量,需要使用`locals()`函数。
需要注意的是,在一些特殊的情况下,变量名可能会被Python解释器优化掉,这时候无法通过上述方法打印出变量名。
阅读全文