【发布时间】:2019-02-27 19:48:19
【问题描述】:
我的项目在以下结构中。
myapp/
pack1/
module1.py
module1.py
pack2/
module3.py
module4.py
.
.
moduleN.py
foo.py
bar.py
我想从 pack2 导入一个模块,我当前的工作文件是 pack1/module1.py。
pack2 会有很多模块,我需要使用变量来获取它们。
我尝试过exec('from pack2 import module3') 和module = importlib.import_module(self.pack2, package=None).。
我的代码,
class ParseData:
def __init__(self, page_res, domain):
self.page_response = page_res
self.domain_ = domain
def listing_details(self):
import importlib
module = importlib.import_module(self.domain_, package=None)
from module import listing_page
我得到了错误,
Traceback (most recent call last):
File "D:/LRI/sample_parser.py", line 16, in <module>
get_listing_data(js)
File "D:/LRI/sample_parser.py", line 7, in get_listing_data
webPage.listing_details()
File "D:\LRI\geoScraper\parser_module.py", line 12, in listing_details
from module import listing_page
ImportError: No module named 'module'
虽然这些似乎有效,但我找不到进一步访问导入模块的方法。
任何指导都可以帮助我。提前致谢。
【问题讨论】:
-
你有什么错误吗?
-
@ManojKengudelu 更新了带有错误消息的问题。
-
使用代码 sn-ps 更新您的任务
-
@EMKAY 已更新。
-
function = getattr(module, listing_page)而不是from module import listing_page
标签: python python-3.x dynamic module