Python 为什么赢了';我的系统是否确认一个新的path环境变量?
我正在使用GUI方法(而不是setx)在windows 7上的%PATH%环境变量中设置目录。我的目标是使我放置在“D:\MPhil\python\My\u python\u modules”目录中的所有python脚本、模块和类都可以在命令行或其他python脚本中使用,但可以从任何目录调用(很像本地python模块可以从任何地方调用) 我经历了以下过程: '编辑系统环境变量->环境变量->将我的目录添加到%PATH%变量的开头' 现在看起来像这样Python 为什么赢了';我的系统是否确认一个新的path环境变量?,python,environment-variables,Python,Environment Variables,我正在使用GUI方法(而不是setx)在windows 7上的%PATH%环境变量中设置目录。我的目标是使我放置在“D:\MPhil\python\My\u python\u modules”目录中的所有python脚本、模块和类都可以在命令行或其他python脚本中使用,但可以从任何目录调用(很像本地python模块可以从任何地方调用) 我经历了以下过程: '编辑系统环境变量->环境变量->将我的目录添加到%PATH%变量的开头' 现在看起来像这样 'D:\MPhil\Python\My_Py
'D:\MPhil\Python\My_Python_Modules\;C:\Program Files (x86)\ActiveState Komodo IDE 8\;...'
但是,目录中包含的'Identify_Gene.py'脚本仍然不可调用(使用命令'python Identify_Gene.py',从随机目录调用)
有人知道我做错了什么吗?您可以执行以下操作:
PATHEXT
python脚本扩展:.PY
set PATHEXT=%PATHEXT%;.PY
(使用环境设置GUI使其永久化)assoc.py=Python.File
ftype Python.File=\pythonw.exe“%%1”%%*
.py
扩展名(如果您设置路径
变量)
另一个选项:您应该将脚本文件夹的路径添加到PYTHONPATH
变量中,然后可以以以下形式调用脚本:
python -m <script name>
python-m
您混淆了PATH
环境变量和PYTHONPATH
环境变量,前者是shell(cmd.exe
)搜索命令的地方,后者初始化Python用于查找模块的sys.PATH
变量
你可以尝试两种方法(或多或少)做你想做的事:
- Windows通常知道
和.py
文件必须通过.pyw
解释器执行。您可以预先设置将脚本放入Python
路径的目录(就像您所做的那样),并直接调用脚本(而不是
)Python Identification_Gene.py
Identify_Gene.py
- 仅将包含python的目录放在路径中,并将包含脚本的目录放在路径中(如果不存在,可以在Windows下创建新的环境变量)。您可以将脚本作为模块调用:
python-m识别_基因
我已经按照您的说明进行了操作,但我看不出它是否有效,因为我的主要问题是设置PATH变量。我更新了第3条语句,其中您需要指定python interperter的路径,如果有效,我似乎已经成功地将目录添加到路径中,但它仍然不起作用。我可以问几个问题:1)我是将目录添加到整个文件夹中,还是只添加到我希望能够调用的文件中?2) 要从任何地方调用脚本,我只需使用通常的“python hello_world.py”命令,还是必须执行其他操作?因此,要从任何地方调用脚本,需要将包含脚本的文件夹添加到PYTHONPATH
变量中,并使用python-m
。如果您想使用PATH
变量而不使用扩展名和python-m
命令,那么您需要执行第一个解决方案(在Windows中建立python脚本关联的三个步骤)好的,因此我已从%PATH%中删除了目录,并创建了一个名为PYTHONPATH的新变量。PYTHONPATH现在包含我的目录(D:\MPhil\Python\my\u Python\u Modules),其中包含一个名为Identify\u Gene.py的文件,但是我不能用Python-m Identify\u Gene.py调用脚本。我还缺什么吗?ThanksTurns指出它是有效的,我唯一的问题是我需要重新启动命令行。谢谢你的帮助