Python 从文件导入对象而不运行该文件';s进口
不确定这是否可行,但想知道是否有任何建议 假设我有一个foo.py文件Python 从文件导入对象而不运行该文件';s进口,python,Python,不确定这是否可行,但想知道是否有任何建议 假设我有一个foo.py文件 import doesnotexist bar = "Hello, World!" 我想从foo import bar执行,但由于导入不存在于此新文件的范围内,因此将失败 一种方法是将bar放入一个名为bar.py的新文件中,并让foo.py也导入该文件,但如果可能,希望跳过该文件 有什么想法吗?没有办法只导入模块的一部分-Python将在提取您要求的部分之前加载整个模块 如注释中所述,您可以捕获模块内的导入错误并忽略它
import doesnotexist
bar = "Hello, World!"
我想从foo import bar执行,但由于导入不存在于此新文件的范围内,因此将失败
一种方法是将bar
放入一个名为bar.py
的新文件中,并让foo.py
也导入该文件,但如果可能,希望跳过该文件
有什么想法吗?没有办法只导入模块的一部分-Python将在提取您要求的部分之前加载整个模块
如注释中所述,您可以捕获模块内的导入错误并忽略它。如果您尝试使用未导入的模块,则代码将生成错误
try:
import doesnotexist
except ImportError:
pass
bar = "Hello, World!"
无法只导入模块的一部分-Python将在提取您请求的部分之前加载整个模块
如注释中所述,您可以捕获模块内的导入错误并忽略它。如果您尝试使用未导入的模块,则代码将生成错误
try:
import doesnotexist
except ImportError:
pass
bar = "Hello, World!"
你的问题相当含糊;为什么不捕获由import-doesnotexist
引发的异常?不,因为这样您就不会得到bar
,我是说在foo.py内部。否则,您无法从运行时异常的模块中获取bar
;为什么不捕获由import-doesnotexist
引发的异常?不,因为这样您就不会得到bar
,我是说在foo.py内部。否则,您无法从具有运行时异常的模块中获取bar
。