繁体   English   中英

如何确定另一个Python文件中是否存在变量

[英]How to determine if a variable exists in another Python file

我有两个python文件。 从python文件#1,我想检查是否在python文件#2中定义了某个全局变量。

做这个的最好方式是什么?

try:
    from file import varName
except ImportError:
    print 'var not found'

或者你可以这样做(如果你已经导入了文件):

import file
# ...
try:
    v = file.varName
except AttributeError:
    print 'var not found'

仅当var是全局变量时,这才有效。 如果您使用范围变量,则需要使用内省。

您可以直接测试file2模块(模块对象)是否具有正确名称的属性:

import file2
if hasattr(file2, 'varName'):
    # varName is defined in file2…

这可能比try… except…方法更直接和易读(取决于你想如何使用它)。

使用getattr()内置函数,您还可以指定默认值,如:

import file2

myVar = getattr(file2, attribute, False)

请参阅文档

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM