大佬教程收集整理的这篇文章主要介绍了如何修复 Pylint 的误报 Unable to import 错误?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
在过去的几个小时里,我试图弄清楚从父目录和子目录导入模块的 Pythonic 方式是什么。我制作了一个仅用于测试目的的项目并将其托管在 github 上,因此您可以查看它以更好地理解我的问题。 在项目中,我们有以下文件结构:
├── __init__.py
├── main.py
└── project
├── a.py
├── __init__.py
└── subdirectory
├── b.py
└── __init__.py
我想弄清楚如何从子目录和父目录导入模块。
如果我尝试将模块 ./project/subdirectorIEs/b.py
和 ./project/a.py
导入到 @H_973_5@main.py 模块中,而没有在导入语句中指定根目录的名称,则 pylint 开始抱怨它是无法找到模块,但程序运行良好:
您的 IDE(以及 pylint)希望代码从您的 git 存储库的根目录启动,而不是从它上面的目录启动。您的 git 项目结构中没有 test
目录。所以我认为导入 from test.project import a
之所以有效,只是因为您的 git 存储库本身被命名为 test
并且因为您从项目目录上方启动了该程序。
即你真正的结构是这样的:
test
├── .git # root of git repository inside test
├── __init__.py
├── main.py
└── project
├── a.py
├── __init__.py
└── subdirectory
├── b.py
└── __init__.py
但是测试目录不在 git 中,对于 IDE,git root 作为源 root。如果您从启动 pylint 的同一目录开始启动 __main__
,则 pylint 指示将是准确的。所以修复是在你的 git 项目中创建 test 目录:
.git # root of git repository outside test/
test
├── __init__.py
├── main.py
└── project
├── a.py
├── __init__.py
└── subdirectory
├── b.py
└── __init__.py
您还可以通过更改 IDE 的根目录从启动代码的同一目录启动 pylint。
以上是大佬教程为你收集整理的如何修复 Pylint 的误报 Unable to import 错误?全部内容,希望文章能够帮你解决如何修复 Pylint 的误报 Unable to import 错误?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。