python - 检查变量是否在python中定义的简单方法?

标签 python

有什么方法可以检查是否定义了具有指定名称的变量(类成员或独立变量)?示例:

if "myVar" in myObject.__dict__ : # not an easy way
  print myObject.myVar
else
  print "not defined"

最佳答案

一种紧凑的方式:

print myObject.myVar if hasattr(myObject, 'myVar') else 'not defined'

不过,htw 的方式更加 Pythonic。

hasattr()x in y.__dict__ 不同,但是:hasattr() 也考虑了继承的类属性作为从 __getattr__ 返回的动态对象,而 y.__dict__ 仅包含那些作为 y 实例属性的对象。

关于python - 检查变量是否在python中定义的简单方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/750298/

相关文章:

Python/关闭未定义

python - Django-如何映射用户之间发送的消息

Python/Gunicorn ssl 握手失败

python - 决策树学习中当前节点到下一个节点的特征组合: useful to determine potential interactions?

python - 使用 Python str.splitlines() 处理尾随换行符

python - 如何从奇数字符串中删除字符?

Python:从父文件夹导入文件

python - MySQL 服务器已经消失 - 通过结帐事件处理程序的断开连接处理不起作用

包含字符串的Python正则表达式

python - 你如何使用 Pyscript 输入和输出文本?