Sos*_*sel 5 python pep8 spyder
为了导入位于磁盘上某处的项目特定模块,可以轻松地将此目录附加到 sys.path:
import sys
sys.path.append(some_module_path)
import some_module
但是,后者的导入现在违反了 PEP E402(“模块级导入不在文件顶部”)。至少 spyder 是这样告诉我的。这里的spyder是不是太挑剔了?
在 spyder 中有一个“项目”的主要思想,我假设可以针对这个项目调整环境。但是,我不知道如何根据 spyder 项目修改例如 sys.path。
如何在 spyder 项目中修改 sys.path?或者是否有解决此问题的通用python方法?
您可以将sys.path扩展放在一个单独的模块中,例如_paths.py.
内容_paths.py:
import sys
sys.path.append(some_module_path)
sys.path.append(some_other_module_path)
# ...and so on...
然后在您的主应用程序中:
import sys
import _paths
import some_module
some_module.some_func()
该解决方案将您的“项目配置”很好地放在一个地方(这使得将来易于维护),并且至少符合 PEP8(包括 E402)和 pylint 规则。