Ответ 1
- Удерживайте Win и нажмите Pause.
- Нажмите "Дополнительные параметры системы".
- Выберите переменные среды.
- Добавить
;C:\python27
в переменнуюPath
. - Перезапустить командную строку.
Я пытаюсь добавить путь Python к командной строке в Windows 7, но независимо от метода, который я пытаюсь, ничего не работает. Я использовал команду set
, я попытался добавить ее через приглашение переменных среды редактирования и т.д.
Далее, если я запустил команду set в командной строке, она перечисляет это
python = c:\python27
Однако он все еще не распознает команду Python.
Чтение документации и различных других источников, похоже, не помогло.
Изменить: просто для того, чтобы уточнить, я добавил путь исполняемого файла Python к PATH в командной строке редактирования. Кажется, не работает.
;C:\python27
в переменную Path
.При установке переменных среды в Windows я ошибался во многих случаях. Я думал, что должен поделиться некоторыми из моих прошлых ошибок, надеясь, что это может помочь кому-то. (Они применимы ко всем переменным среды, а не только при установке Python Path)
Следите за этими возможными ошибками:
;C:\Python27
БЕЗ любых пробелов. (Обычно попробовать C:\SomeOther; C:\Python27
Это пространство (␣) после точки с запятой не в порядке.)echo $PATH
, вы увидите косые черты, но для меня сработали только обратные косые черты.C:\Python27
NOT C:\Python27\
Надеюсь, это поможет кому-то.
Откройте cmd.exe с правами администратора (щелкните правой кнопкой мыши на приложении). Затем введите:
setx путь "% path%; C:\Python27;"
Не забудьте завершить с двоеточием и не включать завершающую косую черту.
У меня была проблема с этим в течение долгого времени. Я добавил его на свой путь во всех отношениях, о которых я мог думать, но вот что, наконец, помогло мне:
pythonexe
(или что угодно)C:\Python32\
)%pythonexe%;
в конец того, что уже существуетIDK, почему это работает, но это было для меня.
затем попробуйте ввести "python" в вашу командную строку, и он должен работать!
Edit:
В последнее время я использую эту программу, которая, похоже, работает очень хорошо. Там также этот, который тоже выглядит неплохо, хотя я никогда не пробовал.
Попробуйте добавить этот python.bat
файл в папку System32
, и в командной строке будет запущен python при вводе python
python.bat
@C:\Python27\python.exe %*
Источник:
https://github.com/KartikTalwar/dotfiles/blob/master/bat/python.bat
Вы можете установить путь из текущего окна cmd с помощью команды PATH =
. Это добавит его только для текущего экземпляра cmd. если вы хотите добавить его навсегда, вы должны добавить его к системным переменным. (Компьютеp > Расширенные системные настройки > Переменные среды)
Вы получили бы ваш экземпляр cmd и ввели PATH = C:/Python27/
.
Убедитесь, что вы не добавляете пробел перед новым каталогом.
Хорошо: старый, старый, старый, новый
Плохо: старый, старый, старый; новый
В следующей программе будет добавлен исполняемый путь python и скрипты поддиректора (которые находятся там, где, например, pip и easy_install, установлены) в вашу среду. Он находит путь к исполняемому файлу python из ключа реестра, связывающего расширение .py. Он удалит старые пути 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)
Python поставляется с небольшой утилитой, которая делает именно это. Из командной строки:
c:\python27\tools\scripts\win_add2path.py
Убедитесь, что вы закроете окно команд (с помощью кнопки exit
или кнопки закрытия) и откройте его снова.
Я знаю, что этот пост старый, но я хотел бы добавить, что решения предполагают admin privs. Если у вас их нет, вы можете:
Перейдите на панель управления, введите путь (теперь это Windows 7, чтобы в поле поиска) и нажмите "Изменить переменные среды для вашей учетной записи". Теперь вы увидите диалог "Переменная среда" с "Переменные пользователя" сверху и "Системные переменные" ниже.
Вы можете, как пользователь, нажать верхнюю кнопку "Создать" и добавить:
Имя переменной: PATH
Значение переменной: C:\Python27
(без пробелов) и нажмите "ОК". После перезапуска командной строки любая переменная PATH в переменных пользователя добавляется в конец системного пути. Он не заменяет PATH каким-либо другим способом.
Если вам нужен определенный полный путь, вам лучше создать пакетный файл, такой как этот маленький:
@echo off
PATH C:\User\Me\Programs\mingw\bin;C:\User\Me\Programs;C:\Windows\system32
title Compiler Environment - %Username%@%Computername%
cmd
Назовите его "compiler.bat" или что угодно и дважды щелкните, чтобы запустить его. Или ссылку на него. Или запишите его и т.д.
Для тех, кто пытается достичь этого с помощью Python 3.3+, установщик Windows теперь включает в себя возможность добавления python.exe в путь поиска системы. Подробнее читайте в документах.
Работа с переменными среды Windows всегда является ужасным опытом. Недавно я нашел замечательный инструмент под названием Rapid Environment Editor, который дает просто простой графический интерфейс для управления ими.
Если вы используете шоколад, вы можете установить его с помощью choco install rapidee
. В противном случае посмотрите http://www.rapidee.com/en/download
Перечитав это, это звучит как платный шилл, но я клянусь, что нет! Это была одна из самых полезных утилит в моем инструментарии на некоторое время, и я удивлен, что никто не знает об этом.
Вам нужно внести изменения в системную переменную
- Щелкните правой кнопкой мыши на "Мой компьютер"
- Нажмите "Свойства"
- Нажмите "Дополнительные настройки системы" на боковой панели
- Нажмите "Переменная среды" - вы будете разделять две части пользовательской переменной и системную переменную
- В разделе системных переменных найдите переменную "Путь", нажмите "Изменить" и добавьте "C:\Python27;"
(без кавычек) сохранить его
- Теперь откройте строку командной строки 'path' hit enter, вы увидите, что переменная пути была изменена
- Теперь введите python --version
, вы увидите версию python
И это делается
Если в моем случае Python был установлен с другой программой, такой как ArcGIS 10.1, тогда вы также должны включить любые дополнительные папки, путь к python.exe, в переменные среды.
Итак, мои переменные окружения выглядят следующим образом:
Системные переменные > Путь > добавить ;C:\Python27\ArcGIS10.1
Этот вопрос довольно старый, но я столкнулся с аналогичной проблемой, и мое конкретное решение не было приведено здесь:
Убедитесь, что у вас нет папки в вашей PATH, которая не существует.
В моем случае у меня была куча стандартных папок (Windows, Powershell, Sql Server и т.д.), а затем пользовательский C:\bin
, который я обычно использую, а затем различные другие настройки, такие как c:\python17
и т.д. что процессор cmd обнаружил, что C:\bin
не существует, а затем прекратил обработку оставшейся переменной.
Кроме того, я не знаю, что я бы это заметил без PATH manager. Он прекрасно подчеркнул тот факт, что этот элемент недействителен.
Я только что установил Python 3.3 в Windows 7 с помощью опции "Добавить python в PATH".
В переменной PATH установщик автоматически добавил окончательную обратную косую черту: C:\Python33\
и поэтому он не работал в командной строке (я пытался несколько раз закрывать/открывать подсказку)
Я удалил окончательную обратную косую черту, а затем сработал: C:\Python33
Спасибо Ram Narasimhan за ваш отзыв # 4!
Я организовал свою переменную окружения python, как это описано в Win7 64-bit, используя cmd.
Я установил переменную PYTHONPATH
через переменную среды menue окон и добавил %PYTHONPATH%
в переменную PATH
:
...;%PYTHONPATH%
Командная строка cmd правильно расширяет эту переменную:
C:\>echo %PYTHONPATH%
C:\python27;c:\python27\lib;C:\python27\scripts
Не забудьте перезапустить CMD-оболочку после изменения PATH.
Моя система - Windows7 32bit, установлен Python 2.7.12 (потому что pdfminer не поддерживает Python 3.X.... T ^ T)
Имел ту же проблему, что мое командное окно распознает слово "python".
Оказалось, что в переменной PATH автоматически добавлена окончательная обратная косая черта: C:\Python33\(то же, что упоминалось выше в Charlie)
Удалите обратную косую черту. все работает нормально.