Nieuws:

Welkom, Gast. Alsjeblieft inloggen of registreren.
Heb je de activerings-mail niet ontvangen?

Auteur Topic: PATH of PYTHONPATH ?  (gelezen 3751 keer)

PATH of PYTHONPATH ?
« Gepost op: 2021/07/15, 15:18:44 »
Wie kan mij uitleggen wat het verschil is tussen iets toevoegen aan PATH of aan PYTHONPATH ?

Kan ik niet alles wat in PYTHONPATH staat gewoon in PATH zetten?
Miscere utile dulci. (Ter leering ende vermaeck)
http://henk.oegema.com  (On RaspberryPi2)
Registered linux user 520520.  In gebruik: Ubuntu  22.04.3 Hobby's: Radio Amateur callsign: PA2HO.  Interesses: Raspberry Pi & Arduino & Jetson Nano (voor AI & ML)

Offline vanadium

  • Lid
Re: PATH of PYTHONPATH ?
« Reactie #1 Gepost op: 2021/07/15, 18:17:12 »
PYTHONPATH zal te maken hebben met de python programmeertaal. PATH is de lijst van directories waarin je besturingssysteem zoekt naar uitvoerbare bestanden met de naam die je hebt ingetypt. Twee andere variabelen, elk met hun eigen functie.

Re: PATH of PYTHONPATH ?
« Reactie #2 Gepost op: 2021/07/15, 18:50:39 »
PYTHONPATH zal te maken hebben met de python programmeertaal. PATH is de lijst van directories waarin je besturingssysteem zoekt naar uitvoerbare bestanden met de naam die je hebt ingetypt. Twee andere variabelen, elk met hun eigen functie.

Maar als ik alle directories van PYTHONPATH in PATH zet, bereik ik dan niet precies hetzelfde ?
Ik heb het idee (maar weet niet of dit juist is)  dat PYTHONPATH een deelverzameling is van PATH.   :|
Miscere utile dulci. (Ter leering ende vermaeck)
http://henk.oegema.com  (On RaspberryPi2)
Registered linux user 520520.  In gebruik: Ubuntu  22.04.3 Hobby's: Radio Amateur callsign: PA2HO.  Interesses: Raspberry Pi & Arduino & Jetson Nano (voor AI & ML)

Offline MKe

  • Lid
Re: PATH of PYTHONPATH ?
« Reactie #3 Gepost op: 2021/07/15, 22:49:42 »
PYTHONPATH zal te maken hebben met de python programmeertaal. PATH is de lijst van directories waarin je besturingssysteem zoekt naar uitvoerbare bestanden met de naam die je hebt ingetypt. Twee andere variabelen, elk met hun eigen functie.

Maar als ik alle directories van PYTHONPATH in PATH zet, bereik ik dan niet precies hetzelfde ?
Ik heb het idee (maar weet niet of dit juist is)  dat PYTHONPATH een deelverzameling is van PATH.   :|
Nee, de PYTHONPPATH is voor Python packages die je in scripts kunt importeren, NIET voor uitvoerbare bestanden. Python scripts die je wilt kunnen uitvoeren moet je dus in de PATH zetten.

Het zijn, zoals Vanadium zegt, twee heel verschillende dingen met heel verschillende functies.
« Laatst bewerkt op: 2021/07/15, 22:51:16 door MKe »
Mijn blokkendoos blog: http://mke21.wordpress.com/

Re: PATH of PYTHONPATH ?
« Reactie #4 Gepost op: 2021/07/16, 10:03:40 »
PYTHONPATH zal te maken hebben met de python programmeertaal. PATH is de lijst van directories waarin je besturingssysteem zoekt naar uitvoerbare bestanden met de naam die je hebt ingetypt. Twee andere variabelen, elk met hun eigen functie.

Maar als ik alle directories van PYTHONPATH in PATH zet, bereik ik dan niet precies hetzelfde ?
Ik heb het idee (maar weet niet of dit juist is)  dat PYTHONPATH een deelverzameling is van PATH.   :|
Nee, de PYTHONPPATH is voor Python packages die je in scripts kunt importeren, NIET voor uitvoerbare bestanden. Python scripts die je wilt kunnen uitvoeren moet je dus in de PATH zetten.

Het zijn, zoals Vanadium zegt, twee heel verschillende dingen met heel verschillende functies.

Dus als ik Python of Idle of Thonny start,  wordt er in PATH gezocht.
En als ik 'import .....' doe, in een van bovengenoemde programma's, dan wordt er in PYTHONPATH gezocht.

Zeg ik dat zo juist? 

Miscere utile dulci. (Ter leering ende vermaeck)
http://henk.oegema.com  (On RaspberryPi2)
Registered linux user 520520.  In gebruik: Ubuntu  22.04.3 Hobby's: Radio Amateur callsign: PA2HO.  Interesses: Raspberry Pi & Arduino & Jetson Nano (voor AI & ML)

Offline MKe

  • Lid
Re: PATH of PYTHONPATH ?
« Reactie #5 Gepost op: 2021/07/16, 14:08:16 »
Ja dat is correct. Dus PYTHONPATH is alleen van belang binnen python scripts. Als je "import mymodule' doet binnen je script, dan kijkt python eerst of module "mymodule' in je actieve directory staat, zo niet, dan loopt hij de directories in PYTHONPATH af om te kijken of hij mymodule ergens daar kan vinden.

Als je echter een python script wilt maken die globaal binnen je systeem te starten moet zijn, dan moet je de file kopieren naar een plek ergens op de PATH en maakt hem uitvoerbaar. Dan kun je het script ongeacht waar je bent op het systeem starten zonder het volledige pad te geven. Dat is precies wat PATH doet.