在虚拟环境中加载空闲时设置PYTHONPATH

时间:2016-01-17 22:53:42

标签: python pythonpath

如何设置内容以便将PYTHONPATH设置为特定项目,并且在加载空闲时所有虚拟环境模块都可用?

1 个答案:

答案 0 :(得分:1)

您可以将其附加到环境中:

import sys
if "N:/ProjectX/Scripts" not in sys.path:
    sys.path.append("N:/ProjectX/Scripts")

编辑:您可以使用PyYamlpip软件包安装到您的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 

视觉示例: enter image description here

由于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文件。