在Python中如何检查变量是否存在?

4 投票
5 回答
28518 浏览
提问于 2025-04-16 08:01

如果“x”这个东西存在,就打印“x存在”。

我问这个是因为我总是遇到这个错误:

UnboundLocalError at /settings/
local variable 'avatarlink' referenced before assignment

5 个回答

2
try:
  variable
except NameError:
  print "It doesn't Exist!"
else:
  print "It exists!"

当然可以!请把你想要翻译的内容发给我,我会帮你把它变得简单易懂。

7

正如Python里说的,“请求原谅总比请求许可好”。所以,直接尝试访问这个变量,如果它不存在就捕捉到错误。

try:
    x
    print "x exists"
except UnboundLocalError:
    print "x doesn't exist"

不过,我其实很想知道你为什么觉得需要这么做。一般来说,你应该在检查变量的值之前先设置好这个变量。

9

你为什么需要知道这个呢?如果代码因为这个出错了,那可能是因为代码本身就有问题,需要修复。

不过,你可以试试检查一下 if 'x' in locals() 或者 if 'x' in globals(),具体用哪个要看你希望它在哪个地方。

撰写回答