rog*_*utz 137 python windows path python-2.7
我一直在尝试将Python路径添加到Windows 7的命令行,但无论我尝试哪种方法,似乎没有任何工作.我已经使用了set命令,我尝试通过编辑环境变量提示等添加它.
如果我在命令行上运行set命令,它会列出这个
python = c:\python27
Run Code Online (Sandbox Code Playgroud)
但它仍然无法识别Python命令.
阅读文档和各种其他来源似乎没有帮助.
编辑:为了进一步澄清,我在编辑环境提示符中将Python可执行文件的路径附加到PATH.似乎没有用.
mel*_*iny 264
;C:\python27到Path变量.Ram*_*han 111
在Windows中设置环境变量时,我在很多场合都出错了.我想我应该在这里分享我过去的一些错误,希望它可以帮助某人.(这些适用于所有环境变量,而不仅仅是在设置Python路径时)
注意这些可能的错误:
;C:\Python27WITHOUT任何空格.(C:\SomeOther; C:\Python27在分号不合适之后尝试那个空格(␣)是很常见的.)echo $PATH但只有反向斜杠对我有效.C:\Python27不C:\Python27\希望这有助于某人.
小智 51
使用管理员权限打开cmd .exe(右键单击应用程序).然后输入:
setx路径"%path%; C:\ Python27;"
请记住以分号结尾,不要包含尾部斜杠.
Jus*_*age 32
我很久没遇到这个问题了.我以我能想到的各种方式将它添加到我的路径中,但这里最终对我有用:
pythonexe(或任何你想要的)C:\Python32\)%pythonexe%;到已经存在的内容的末尾IDK为什么会这样,但它确实适合我.
然后尝试在命令行中键入"python",它应该工作!
编辑:
最近我一直在使用这个似乎运作良好的程序.虽然我从来没有尝试过,但也有一个看起来相当不错的.
Kar*_*tik 16
尝试将此python.bat文件添加到System32文件夹,命令行现在将在您键入时运行pythonpython
python.bat
@C:\Python27\python.exe %*
Run Code Online (Sandbox Code Playgroud)
资源:
https://github.com/KartikTalwar/dotfiles/blob/master/bat/python.bat
Ani*_*han 14
您可以使用该命令设置当前cmd窗口的路径PATH =.这只会为当前的cmd实例添加它.如果要永久添加它,则应将其添加到系统变量中.(计算机>高级系统设置>环境变量)
你会转到你的cmd实例,然后输入PATH=C:/Python27/;%PATH%.
Python附带了一个小实用程序.从命令行运行:
c:\python27\tools\scripts\win_add2path.py
Run Code Online (Sandbox Code Playgroud)
确保关闭命令窗口(使用exit或关闭按钮)并再次打开它.
以下程序将向您的环境添加python可执行文件路径和子文件脚本(这是安装pip和easy_install的地方).它从绑定.py扩展名的注册表项中找到python可执行文件的路径.它将删除环境中的旧python路径.适用于XP(也可能是Vista).它仅使用基本Windows安装程序附带的模块.
# coding: utf-8
import sys
import os
import time
import _winreg
import ctypes
def find_python():
"""
retrieves the commandline for .py extensions from the registry
"""
hKey = _winreg.OpenKey(_winreg.HKEY_CLASSES_ROOT,
r'Python.File\shell\open\command')
# get the default value
value, typ = _winreg.QueryValueEx (hKey, None)
program = value.split('"')[1]
if not program.lower().endswith(r'\python.exe'):
return None
return os.path.dirname(program)
def extend_path(pypath, remove=False, verbose=0, remove_old=True,
script=False):
"""
extend(pypath) adds pypath to the PATH env. variable as defined in the
registry, and then notifies applications (e.g. the desktop) of this change.
!!! Already opened DOS-Command prompts are not updated. !!!
Newly opened prompts will have the new path (inherited from the
updated windows explorer desktop)
options:
remove (default unset), remove from PATH instead of extend PATH
remove_old (default set), removes any (old) python paths first
script (default unset), try to add/remove the Scripts subdirectory
of pypath (pip, easy_install) as well
"""
_sd = 'Scripts' # scripts subdir
hKey = _winreg.OpenKey (_winreg.HKEY_LOCAL_MACHINE,
r'SYSTEM\CurrentControlSet\Control\Session Manager\Environment',
0, _winreg.KEY_READ | _winreg.KEY_SET_VALUE)
value, typ = _winreg.QueryValueEx (hKey, "PATH")
vals = value.split(';')
assert isinstance(vals, list)
if not remove and remove_old:
new_vals = []
for v in vals:
pyexe = os.path.join(v, 'python.exe')
if v != pypath and os.path.exists(pyexe):
if verbose > 0:
print 'removing from PATH:', v
continue
if script and v != os.path.join(pypath, _sd) and \
os.path.exists(v.replace(_sd, pyexe)):
if verbose > 0:
print 'removing from PATH:', v
continue
new_vals.append(v)
vals = new_vals
if remove:
try:
vals.remove(pypath)
except ValueError:
if verbose > 0:
print 'path element', pypath, 'not found'
return
if script:
try:
vals.remove(os.path.join(pypath, _sd))
except ValueError:
pass
print 'removing from PATH:', pypath
else:
if pypath in vals:
if verbose > 0:
print 'path element', pypath, 'already in PATH'
return
vals.append(pypath)
if verbose > 1:
print 'adding to PATH:', pypath
if script:
if not pypath + '\\Scripts' in vals:
vals.append(pypath + '\\Scripts')
if verbose > 1:
print 'adding to PATH:', pypath + '\\Scripts'
_winreg.SetValueEx(hKey, "PATH", 0, typ, ';'.join(vals) )
_winreg.SetValueEx(hKey, "OLDPATH", 0, typ, value )
_winreg.FlushKey(hKey)
# notify other programs
SendMessage = ctypes.windll.user32.SendMessageW
HWND_BROADCAST = 0xFFFF
WM_SETTINGCHANGE = 0x1A
SendMessage(HWND_BROADCAST, WM_SETTINGCHANGE, 0, u'Environment')
if verbose > 1:
print 'Do not forget to restart any command prompts'
if __name__ == '__main__':
remove = '--remove' in sys.argv
script = '--noscripts' not in sys.argv
extend_path(find_python(), verbose=2, remove=remove, script=script)
Run Code Online (Sandbox Code Playgroud)
我知道这篇文章已经过时了,但我想补充一点,解决方案假设是管理员权限.如果你没有那些你可以:
转到控制面板,键入路径(现在这是Windows 7,以便在搜索框中),然后单击"为您的帐户编辑环境变量".现在,您将看到顶部的"用户变量"和下面的"系统变量"的"环境变量"对话框.
您可以作为用户单击顶部的"新建"按钮并添加:
变量名称:PATH
变量值:C:\ Python27
(无任何空格)并单击"确定".重新启动命令提示符后,User变量中的任何PATH都将附加到系统路径的末尾.它不会以任何其他方式替换PATH.
如果你想要一个特定的完整路径设置,你最好创建一个像这个小的批处理文件:
@echo off
PATH C:\User\Me\Programs\mingw\bin;C:\User\Me\Programs;C:\Windows\system32
title Compiler Environment - %Username%@%Computername%
cmd
Run Code Online (Sandbox Code Playgroud)
称之为"compiler.bat"或其他,然后双击启动它.或链接到它.或者固定它等等......
您需要在系统变量中进行更改
- 右键单击"我的电脑"
- 单击"属性"
- 单击侧面板中的"高级系统设置"
- 单击环境变量 - 您将用户的两个部分变量和系统变量
- 在系统变量部分搜索变量'Path'点击编辑并添加
"C:\Python27;"(不带引号)保存它
- 现在打开命令行类型'path'命中输入你将看到路径变量已被修改
-现在键入python --version你将看到python版本
它完成了
| 归档时间: |
|
| 查看次数: |
476731 次 |
| 最近记录: |