Am încercat să adaug calea Python la linia de comandă pe Windows 7, dar indiferent de metoda pe care o încerc, nimic nu pare să funcționeze. Am folosit opțiunea set
comandă, am încercat să o adaug prin promptul Edit Environment variables etc.
Mai mult decât atât, dacă execut comanda set în linia de comandă, aceasta afișează următorul lucru
python = c:python27
Cu toate acestea, tot nu recunoaște comanda Python.
Citirea documentației și a diferitelor alte surse nu a părut să ajute.
Editare: Doar pentru a clarifica mai mult, am adăugat calea executabilului Python la PATH în promptul de editare a mediului. Nu pare să funcționeze.
- Țineți Câștigă și apăsați Pauză.
- Faceți clic pe Advanced System Settings (Setări avansate ale sistemului).
- Faceți clic pe Variabile de mediu.
- Adăugați
;C:python27
laPath
variabilă. - Reporniți Command Prompt.
- Da, am făcut deja asta. Îmi pare rău dacă nu am fost mai clar în întrebarea inițială… > .
- Asigurați-vă că nu aveți spații în variabilele python și path. – > .
- @rogerklutz: Asigură-te că adaugi „;C:python27” la variabila PATH care există deja, și nu creezi o nouă variabilă cu „C:python27” ca valoare. – > .
- În multe cazuri, trebuie, de asemenea, să vă deconectați și să vă conectați din nou după ce ați setat variabila Path. – > .
- Suferind o problemă similară, am făcut totul, cu excepția pasului 5… Vă mulțumim că ați inclus acest lucru. – > .
La setarea variabilelor de mediu în Windows, am greșit de foarte multe ori. M-am gândit că ar trebui să împărtășesc aici câteva dintre greșelile mele din trecut, în speranța că ar putea ajuta pe cineva. (Acestea se aplică tuturor variabilelor de mediu, nu doar la setarea Path Python)
Fiți atenți la aceste posibile greșeli:
- Opriți și redeschideți fereastra de shell: Odată ce ați făcut o modificare a Variabilelor de mediu, trebuie să să reporniți fereastra pe care o testați.
- FĂRĂ SPAȚII atunci când setați variabilele. Asigurați-vă că adăugați
;C:Python27
FĂRĂ spații. (Este obișnuit să încercațiC:SomeOther; C:Python27
Acel spațiu (␣) după punctul și virgulă este nu este în regulă). - USE A SLASH ÎNAPOI atunci când scrieți calea completă. Veți vedea bară oblică înainte atunci când veți încerca
echo $PATH
dar la mine au funcționat doar slash-urile inversate. - NU adăugați o backslash finală. Doar
C:Python27
NUC:Python27
Sper că acest lucru ajută pe cineva.
- Motivul pentru care am ales acest răspuns este acela că, de cele mai multe ori, PATH-ul se întrerupe din cauza unuia dintre aceste 4 lucruri. Partea ușoară este să o faci corect, partea dificilă este să îți dai seama când ai făcut-o incorect! – > .
- Comanda
echo $path
este valabilă doar dacă rulați un shell bash sub Windows (de exemplu, MinGW). Comanda din promptul de comandă Windows esteecho %path%
– > . - Nu am constatat că backlash-ul de urmărire este problematic. Oare îmi scapă ceva? – > .
Deschideți cmd.exe cu privilegii de administrator (faceți clic dreapta pe aplicație). Apoi tastați:
setx path „%path%;C:Python27;”
Nu uitați să încheiați cu punct și virgulă și nu includeți o bară oblică finală.
- +1- Acest lucru vă permite să adăugați la cale fără a avea nevoie de privilegii de administrator. Cu toate acestea, nu sunt sigur că %path% este necesar. Pe sistemul meu Windows 7, noile ferestre cmd au acum două copii ale căilor anterioare. – > .
- %path% este vechea dvs. valoare a variabilei de cale, este acolo pentru ca „C:Python27;” să fie adăugată la calea existentă. – > .
Am avut o problemă cu acest lucru pentru o perioadă lungă de timp. Am adăugat-o la calea mea în toate modurile la care m-am putut gândi, dar iată ce a funcționat în cele din urmă pentru mine:
- Faceți clic dreapta pe „Computerul meu”
- Faceți clic pe „Proprietăți”
- Faceți clic pe „Setări avansate ale sistemului” în panoul lateral
- Faceți clic pe „Variabile de mediu”
- Faceți clic pe „New” (Nou) sub variabilele de sistem
- la nume introduceți
pythonexe
(sau orice doriți) - în valoare introduceți calea de acces la python (exemplu:
C:Python32
) - Acum editați variabila Path (în partea de sistem) și adăugați
%pythonexe%;
la finalul a ceea ce este deja acolo
IDK de ce funcționează acest lucru, dar pentru mine a funcționat.
apoi încercați să tastați „python” în linia de comandă și ar trebui să funcționeze!
Editați:
În ultima vreme am folosit acest program care pare să funcționeze destul de bine. Există, de asemenea, și acesta care pare și el destul de bun, deși nu l-am încercat niciodată.
Încearcă să adaugi asta python.bat
fișier la System32
folder și linia de comandă va rula acum python atunci când veți tasta python
python.bat
@C:Python27python.exe %*
Sursă:
https://github.com/KartikTalwar/dotfiles/blob/master/bat/python.bat
Puteți seta calea din fereastra cmd curentă folosind opțiunea PATH =
comandă. Aceasta o va adăuga doar pentru instanța cmd curentă. dacă doriți să o adăugați permanent, ar trebui să o adăugați la variabilele de sistem. (Computer > Setări avansate ale sistemului > Variabile de mediu)
Ar trebui să mergeți la instanța cmd și să puneți în PATH=C:/Python27/;%PATH%
.
- Această soluție a funcționat pentru mine pe Win7 Pro . Testat cu
echo %PATH~%
. – > .
Asigurați-vă că nu adăugați un spațiu înaintea noului director.
Bun:vechi;vechi;vechi;vechi;nou
Rău:vechi;vechi;vechi;vechi; nou
Python vine cu un mic utilitar care face exact acest lucru. Din linia de comandă rulați:
c:python27toolsscriptswin_add2path.py
Asigurați-vă că ați închis fereastra de comandă (cu exit
sau cu butonul de închidere) și deschideți-o din nou.
- În ceea ce mă privește, acesta modifică registrul, dar nici o aplicație nu va fi afectată până când nu confirmați manual modificările prin intermediul dialogului GUI standard. Repornirea unei aplicații nu ajută. Se pare că este nevoie și de un fel de difuzare. – > .
- Acest lucru a funcționat pentru mine pe 8.1 și pare mai ușor decât alte abordări. Se deschide o fereastră/căsuță și te întreabă ce vrei să rulezi. Selectați Alt și apoi navigați înapoi la c:python27 și alegeți executabilul python (.exe). Efectul pare să fie permanent, astfel încât trebuie să faceți asta doar o singură dată. Va trebui să rulați win_add2path.py pentru fiecare utilizator, dar nu veți mai primi caseta după prima dată. – > .
Următorul program va adăuga calea executabilă python și subdirul Scripts (care este locul unde sunt instalate, de exemplu, pip și easy_install) în mediul dvs. de lucru. Acesta găsește calea către executabilul python din cheia de registru care leagă extensia .py. Va elimina căile vechi de acces la python din mediul dumneavoastră. Funcționează și cu XP (și probabil și cu Vista).Folosește numai modulele care vin cu programul de instalare de bază pentru 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.Fileshellopencommand')
# 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'SYSTEMCurrentControlSetControlSession ManagerEnvironment',
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)
- Aceasta mi-a distrus PATH-ul. Iată o versiune corectată (am eliminat și remove_old, care este imposibil* de realizat corect): gist.github.com/anonymous/fb5d176ab91dccbd0ebedd * da – > .
Știu că această postare este veche, dar aș dori să adaug că soluțiile presupun privilegii de administrator. Dacă nu le aveți pe acelea, puteți:
Mergeți la panoul de control, tastați calea (acum este Windows 7, deci este în caseta de căutare) și faceți clic pe „Editați variabilele de mediu pentru contul dvs.”. Acum veți vedea fereastra de dialog „Environment Variable” cu „User variables” în partea de sus și „System variables” mai jos.
În calitate de utilizator, puteți face clic pe butonul de sus „New” (Nou) și adăugați:
Numele variabilei: PATH
Valoarea variabilei: C:Python27
(fără spații nicăieri) și faceți clic pe OK. După ce promptul de comandă este repornit, orice PATH din variabilele User este adăugat la la sfârșitul Căii sistemului. Aceasta nu înlocuiește PATH în niciun alt mod.
Dacă doriți să configurați o cale completă specifică, este mai bine să creați un fișier batch ca acesta micuț:
@echo off
PATH C:UserMeProgramsmingwbin;C:UserMePrograms;C:Windowssystem32
title Compiler Environment - %Username%@%Computername%
cmd
Numiți-l „compiler.bat” sau orice altceva și faceți dublu clic pentru a-l lansa. Sau creați un link către el. Sau fixați-l etc…
Trebuie să faceți modificări în variabila de sistem
— Faceți clic dreapta pe „Computerul meu”
— Faceți clic pe „Proprietăți”
— Faceți clic pe „Setări avansate ale sistemului” în panoul lateral
— Faceți clic pe Variabila de mediu — Veți avea două secțiuni: variabila de utilizator și variabila de sistem.
— În secțiunea variabile de sistem căutați variabila „Path”, faceți clic pe „Edit” și adăugați-o."C:Python27;"
(fără ghilimele) salvați-o
— Acum, deschideți linia de comandă, tastați „path” și apăsați enter Veți vedea că variabila „path” a fost modificată.
— Acum tastați python --version
veți vedea versiunea python
Și s-a terminat.
Pentru oricine încearcă să realizeze acest lucru cu Python 3.3+, programul de instalare pentru Windows include acum o opțiune pentru a adăuga python.exe la calea de căutare a sistemului. Citiți mai multe în documentația.
- Aceasta este ceea ce am folosit eu, deoarece aveam probleme în a găsi calea exactă de instalare. Porniți programul de instalare, apăsați „Modify” și apoi pe Optional Features, faceți clic pe next, apoi bifați caseta pentru a adăuga Python la calea de căutare a sistemului și apăsați Finish. – > .
Lucrul cu variabilele de mediu Windows este întotdeauna o experiență oribilă. Recent, am găsit un instrument uimitor numit Rapid Environment Editor, care oferă o interfață grafică extraordinar de simplă pentru gestionarea acestora.
Dacă folosiți chocolatey, îl puteți instala folosind choco install rapidee
. În caz contrar, aruncați o privire la http://www.rapidee.com/en/download
Reluând aceste rânduri, sună ca un shill plătit, dar jur că nu sunt! Pur și simplu a fost unul dintre cele mai utile utilități din setul meu de instrumente de ceva vreme și sunt surprins că nimeni nu pare să știe despre el.
Dacă Python a fost instalat împreună cu un alt program, cum ar fi ArcGIS 10.1 în cazul meu, atunci trebuie să includeți în variabilele de mediu și toate folderele suplimentare care se îndreaptă către python.exe.
Deci, Variabilele mele de mediu arată astfel:
Variabile de sistem > Path > add ;C:Python27ArcGIS10.1
Această întrebare este destul de veche, dar tocmai am dat peste o problemă similară și soluția mea particulară nu a fost listată aici:
Asigurați-vă că nu aveți un folder în PATH care nu există.
În cazul meu, aveam o grămadă de foldere implicite (Windows, Powershell, Sql Server etc.) și apoi un folder personalizat. C:bin
pe care îl folosesc de obicei, iar apoi diverse alte modificări, cum ar fi c:python17
, , etc. Se pare că procesorul cmd găsea că c:bin
nu exista și apoi se oprea din procesarea restului variabilei.
De asemenea, nu știu dacă aș fi observat vreodată acest lucru fără PATH manager. Acesta a evidențiat frumos faptul că acel element era invalid.
Tocmai am instalat Python 3.3 pe Windows 7 folosind opțiunea „add python to PATH”.
În variabila PATH, programul de instalare a adăugat automat un element backslash final: C:Python33
și astfel nu a funcționat pe promptul de comandă (am încercat să închid/deschid promptul de mai multe ori)
Am eliminat backslash-ul final și apoi a funcționat: C:Python33
Mulțumesc Ram Narasimhan pentru sfatul dvs. nr. 4!
Mi-am organizat variabila de mediu python astfel sub Win7 64 de biți folosind cmd.
Am setat variabila PYTHONPATH
prin meniul variabilelor de mediu din Windows și am adăugat %PYTHONPATH%
la PATH
variabilă:
...;%PYTHONPATH%
Shell-ul cmd extinde corect variabila astfel:
C:>echo %PYTHONPATH%
C:python27;c:python27lib;C:python27scripts
Nu uitați să reporniți cmd shell după modificarea PATH.
scrieți acest lucru în Command Prompt:
set Path=%path%
Înlocuiți %path% cu Calea de acces a folderului Python Exemplu:
set Path=C:/Python27
Pentru persoanele care primesc fereastra windows store atunci când scriu python în consolă, tot ce trebuie să faceți este să mergeți la configuration -> Manage app execution aliases
și să dezactivați comutatoarele care spun python.
apoi, adăugați următoarele foldere la PATH.
C:UsersalberAppDataLocalProgramsPythonPython39
C:UsersalberAppDataLocalProgramsPythonPython39Scripts
Dacă sunteți pe Windows, rulați acest lucru:
C:Usersusername> cd C:bin
C:bin> echo @php "%~dp0phpunit.phar" %* > phpunit.cmd
Asigurați-vă că ați instalat phpuunit, așa cum se menționează aici: https://phpunit.de/manual/6.5/en/installation.html
Apoi:
phpunit path-to-your-test
Dacă v-ați frustrat prin setarea căii pentru python, descărcați noua versiune de python, dezinstalați versiunea mai veche de python și, în timp ce instalați noua versiune, vă va întreba dacă doriți să setați calea de acces, marcați-o și instalați-o.
aceasta este cea mai bună metodă.
GUI
șiCommand Line
opțiune de aici stackoverflow.com/a/38141751/5409601 – > Por Rafayet Ullah.