Python ImportError - 无法导入名称
问题描述:
我是Python新手,无法解决一个错误。 所以我有两个文件夹“Common”和“Parsers”。在 “通用” -folder有一个文件 - FileUtils.py:Python ImportError - 无法导入名称
import re
def get_filename(target):
pattern = "^.*\/(.*)$"
names = re.findall(pattern, target)
return names[0]
在 “分析器” -folder也有一个文件 - Parser.py:
import os
import urllib
import urllib.request
import re
from Common import FileUtils
#urls - list of strings
def parse_images(urls)
...
...
full_path = os.path.join(directory, FileUtils.get_filename(final_link))
...
最后,在根文件夹 - Main.py:
from Parsers import Parser
def main():
url = ['http://www.example.com']
Parser.parse_images(url)
在Main.py的第一线 - “从解析器进口分析器” PyCharm抛出一个错误 - “导入错误:无法导入名称‘解析器’”。
有人可以解释我做错了什么吗?谢谢。
P.S.当一个文件中的所有代码 - 程序工作正常。
答
您是否将文件夹设置为Python包?如果你想从一个目录导入,那么你需要一个__init__.py
文件来完成这个工作(一个空的工作)。
尝试创建一个空Parsers/__init__.py
文件,看看能否解决
感谢您的帮助!我创建了一个简单的文件夹,而不是Python包。将代码放入Python包后,我的应用程序正常工作。 – riktus