Python 为什么我不能从当前目录中的另一个py文件导入函数?
我无法从另一个py文件导入函数。 如何从同一目录中的另一个py文件导入函数? 两个py文件位于同一目录中。 Python版本是3.7。 操作系统是Windows10。 请帮忙,非常感谢 db.pyPython 为什么我不能从当前目录中的另一个py文件导入函数?,python,python-import,Python,Python Import,我无法从另一个py文件导入函数。 如何从同一目录中的另一个py文件导入函数? 两个py文件位于同一目录中。 Python版本是3.7。 操作系统是Windows10。 请帮忙,非常感谢 db.py 从解析器导入解析器#模块“parser”中没有名称“parser” def_db(): ''' 函数:从GUI获取sql,并将其传递给paser ''' 打印(“启动DBMS”) #待办事项 打印(“结束数据库管理系统”) 通过 如果名称=“\uuuuu main\uuuuuuuu”: _db() 解
从解析器导入解析器#模块“parser”中没有名称“parser”
def_db():
'''
函数:从GUI获取sql,并将其传递给paser
'''
打印(“启动DBMS”)
#待办事项
打印(“结束数据库管理系统”)
通过
如果名称=“\uuuuu main\uuuuuuuu”:
_db()
解析器()
parser.py
def解析器(_sql=None):
'''
功能:获取sql字符串,解析它并调用相应的函数
'''
打印(“开始解析”)
#待办事项
打印(“结束解析”)
通过
回溯(最近一次呼叫最后一次):
文件“db.py”,第1行,在
from parser import parser
ImportError:无法从“parser”(未知位置)导入名称“parser”将文件名
parser.py
更改为类似于parser1.py的其他名称,然后
from parser1 import parser
应该像预期的那样工作
由于编译器认为您引用的是python解析器
,因为python有名为解析器
的内置模块,所以您的模块与之冲突,解决方案有两个:
1.更改您的模块名称。
2.使用绝对路径,但首先,您应该将项目目录添加到路径中,如果您使用PyCharm,它可以帮助您默认地执行此操作
如果你的项目结构是这样的
...other directory...
--top_layer
--second_layer
--parser.py
你可以这样导入
from top_layer.parser import parser
对不起,我的英语很差 选择一个不是解析器的名称。