Python 3.x Python导入方案
我正在尝试编写一个python库,其中一些文件依赖于其他文件,例如: 我有文件夹结构:Python 3.x Python导入方案,python-3.x,Python 3.x,我正在尝试编写一个python库,其中一些文件依赖于其他文件,例如: 我有文件夹结构: ../libname ../libname/core.py ../libname/supplementary1.py ../libname/supplementary2.py ../libname/__init__.py 其中libname是我从中导入的位置 core.py文件以以下内容开头: import supplementary1 import supplementary2 …一些代码 如果我在co
../libname
../libname/core.py
../libname/supplementary1.py
../libname/supplementary2.py
../libname/__init__.py
其中libname是我从中导入的位置
core.py文件以以下内容开头:
import supplementary1
import supplementary2
…一些代码
如果我在core.py的main中测试它,这就很好了
假设我想在我的项目中使用libname作为库。我的文件夹结构是:
./libname
./main.py
其中main.py调用core.py中的函数,而core.py实际上需要来自supplementary1和supplementary2的函数
目前,如果我尝试(在main.py中),它会给我一个错误,说没有补充1
我的问题是,如何从我的库中导入文件?我的意思是,一种选择是将所有代码从例如supplementary1复制到core.py,但如果可能的话,我希望将代码优雅地分开
换句话说,如何导入一个已经从本地库导入了一些文件的文件
非常感谢。在
导入…
和从。。。导入…
您需要写入的不是文件名,而是模块名。与core.py
不同,您应该在包libname
中说libname.core
,意思是“modulecore
”(libname
,通常包括您启动的脚本目录,即main.py
所在的位置)
tl;dr:您的问题的一个简单答案是从libname.core导入函数1编写
此外,我建议使用and而不是导入补充1
writefrom。导入补充1
-此处,来自。
表示“来自当前包-此文件(模块)所在的位置”
考虑阅读-这里有很多例子和解释。在
import…
和from。。。导入…
您需要写入的不是文件名,而是模块名。与core.py
不同,您应该在包libname
中说libname.core
,意思是“modulecore
”(libname
,通常包括您启动的脚本目录,即main.py
所在的位置)
tl;dr:您的问题的一个简单答案是从libname.core导入函数1编写
此外,我建议使用and而不是导入补充1
writefrom。导入补充1
-此处,来自。
表示“来自当前包-此文件(模块)所在的位置”
考虑阅读——这里有很多例子和解释。谢谢,这对我来说很清楚。谢谢,这对我来说很清楚。
from core.py import function1