如何设置内容以便将PYTHONPATH设置为特定项目,并且在加载空闲时所有虚拟环境模块都可用?
答案 0 :(得分:1)
您可以将其附加到环境中:
import sys
if "N:/ProjectX/Scripts" not in sys.path:
sys.path.append("N:/ProjectX/Scripts")
编辑:您可以使用PyYaml
将pip
软件包安装到您的python中,然后在主应用程序目录中的某处创建Default_Path.yaml
并插入项目和路径像这样:
#Paths
ProjectX:
Icon: 'N:/ProjectX/ICON'
Presets: 'N:/ProjectX/Presets'
ProjectY:
Icon: 'N:/ProjectY/ICON'
Presets: 'N:/ProjectY/Presets'
并阅读Default_Path.yaml
即可运行:
import yaml
documents = open(N:/Application/Default_Path.yaml, 'r')
doc = yaml.load(documents) #It's a Dictionary
print doc['ProjectX']['Icon']
然后您可以检查用户系统,如果路径不存在,则将它们附加到他们的环境中。
编辑:在python项目中读取子python文件只需在每个子文件夹中组织并添加__init__.py
,如下所示:
D:/ #Driver name
projectX/ #Project Name
main.py #Main Application
Mudules/ #Sub-folder
__init__.py #initialize the sub-folder
module1.py #package/moudle
module2.py #package/moudle
Widgets/ #Sub-folder
__init__.py #initialize the sub-folder
widget1.py #custom widget
widget2.py #custom widget
由于c ++,我给我的主文件main.py
,但是在python中你可以给出任何名字,这是个人偏好。
并在你的main.py
中调用你的sub-python项目,你只需这样写:
import Mudules.module1 as moudle1
import Widgets.widget1 as coolUI
或
from Mudules.module1 import *
from Widgets.widget1 import *
然后你就叫你功能了。并且您不需要检查路径是否在sys.path
中,如果不是sys.path.append()
则用于python文件。