Python中文
首页
教程
问答
标签
搜索
登录
注册
在项目目录外导入函数的最佳方法
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我的项目具有以下结构:</p> <pre><code>. └── mylib ├── __init__.py ├── fun1.py ├── fun2.py └── test.py </code></pre> <p>假设<code>test.py</code>从模块<code>fun1.py</code>和<code>fun2.py</code>导入函数,因此它包含</p> <pre><code>from fun1 import funA from fun2 import funB </code></pre> <p>但是,当我尝试在项目目录外导入<code>test.py</code>时,出现以下错误:</p> <pre><code>ModuleNotFoundError: No module named 'fun1' </code></pre> <p>我可以通过在导入中指定<code>fun1.py</code>和<code>fun2.py</code>的整个路径来解决这个问题。你知道吗</p> <pre><code>from mylib.fun1 import funA from mylib.fun2 import funB </code></pre> <p>但同样,假设我不必只导入<code>funA()</code>和<code>funB</code>,我有一大堆除<code>test.py</code>之外的模块,它们也从彼此导入函数。因此,为每个导入指定路径将花费大量时间(像这样进行的导入超过200个)。你知道吗</p> <p>除了为所有导入指定整个路径之外,还有没有更干净的方法来进行这些导入?你知道吗</p> <p>我试着在我的<code>__init__.py</code>上进行这些导入,但是由于我的经验不足,我仍然无法使它工作。你知道吗</p> <h2>文件</h2> <h2>风趣1.py</h2> <pre><code>def funA(): return True </code></pre> <h2>风趣2.py</h2> <pre><code>from fun1 import funA def funB(): return True </code></pre> <h2>你知道吗测试.py你知道吗</h2> <pre><code>from fun1 import funA from fun2 import funB </code></pre>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>根据我的理解,您正在尝试导入位于其他项目位置的模块。尝试此操作,并将path替换为要从中导入模块的位置。你知道吗</p> <pre><code>sys.path.insert(0, path) </code></pre> <p>如果我误解了你的问题,请告诉我。你知道吗</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
无法使用Django/mongoengine连接到MongoDB(身份验证失败)
8 回答
无法使用Django\u mssql\u后端迁移到外部hos
9 回答
无法使用Django&Python3.4连接到MySql
1 回答
无法使用Django+nginx上载媒体文件
6 回答
无法使用Django1.6导入名称模式
5 回答
无法使用Django1.7和mongodb登录管理站点
3 回答
无法使用Djangoadmin创建项目,进程使用了错误的路径,因为我事先安装了错误的Python
8 回答
无法使用Djangockedi验证CBV中的字段
6 回答
无法使用Djangocketditor上载图像(错误400)
7 回答
无法使用Djangocron进行函数调用
10 回答
无法使用Djangofiler djang上载文件
9 回答
无法使用Djangokronos
3 回答
无法使用Djangomssql provid
9 回答
无法使用Djangomssql连接到带有Django 1.11的MS SQL Server 2016
6 回答
无法使用Djangomssq迁移Django数据库
6 回答
无法使用Djangonox创建用户
10 回答
无法使用Djangopyodb从Django查询SQL Server
10 回答
无法使用Djangopython3ldap连接到ldap
2 回答
无法使用Djangoredis连接到redis
7 回答
无法使用Django中的FK创建新表
10 回答