Fórum Ubuntu CZ/SK

Ubuntu pro osobní počítače => Software => Příkazový řádek a programování pro GNU/Linux => Téma založeno: brbik 09 Září 2012, 12:41:58

Název: python skripty
Přispěvatel: brbik 09 Září 2012, 12:41:58
Zdravím

Začal jsem se učit s pythonem ale mám takový začátečnický problém. Nevím jak spustit skripty psané v textovém editoru. Hledal jsem i na wiki ale to co je napsané tam mi nefunguje.
Název: Re:python skripty
Přispěvatel: Vojtěch Trefný 09 Září 2012, 12:48:20
???

Kód: [Vybrat]
python skript.py
Název: Re:python skripty
Přispěvatel: brbik 09 Září 2012, 12:50:45
zas takový blb nejsem :D
Kód: [Vybrat]
david@david-ThinkPad-SL300:~$ python test1.py
python: can't open file 'test1.py': [Errno 2] No such file or directory
david@david-ThinkPad-SL300:~$
Název: Re:python skripty
Přispěvatel: GdH 09 Září 2012, 13:10:30
zas takový blb nejsem :D

Jseš si jist? ;) Takhle to můžeš spouštět z adresáře, kde je ten tvůj skript, jinak musíš zadat (absolutní) cestu.
Název: Re:python skripty
Přispěvatel: brbik 09 Září 2012, 13:17:36
to jsem zkoušel taky ale teď jsem udělal větší blbost než jsem si myslel že můžu udělat :D  v absolutní cestě jsem napsal "Plocha" s malým "p" a to byl kámen celého úrazu :D Ale absolutní cestu jsem zkoušel i předtím.
Název: Re:python skripty
Přispěvatel: brbik 09 Září 2012, 13:25:04
a ještě jak jde spouštět skripty přímo z interpreteru pythonu? Udělá mi to tohle:
Kód: [Vybrat]
>>> test1.py
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'test1' is not defined
>>>
Název: Re:python skripty
Přispěvatel: GdH 09 Září 2012, 13:27:47
to jsem zkoušel taky ale teď jsem udělal větší blbost než jsem si myslel že můžu udělat :D  v absolutní cestě jsem napsal "Plocha" s malým "p" a to byl kámen celého úrazu :D Ale absolutní cestu jsem zkoušel i předtím.

Když ti to napíše, že file neexistuje, není se na co ptát - prostě jsi udělal chybu. Nauč se používat klávesu Tab pro automatické doplňování (nejen) cest, ulehčí ti to práci:
http://wiki.ubuntu.cz/systém/příkazová_řádka/terminál#automatické_doplňování (http://wiki.ubuntu.cz/systém/příkazová_řádka/terminál#automatické_doplňování)

Dále pokud svému skriptu nastavíš spustitelný příznak a na začátek dáš cestu k interpretu
Kód: [Vybrat]
#!/usr/bin/env pythonmůžeš spouštět skripty přímo, bez příkazu "python".
Název: Re:python skripty
Přispěvatel: brbik 09 Září 2012, 13:31:07
Citace
Kód: [Vybrat]
#!/usr/bin/env python
to myslíš jako před název toho skriptu nebo kde?

Název: Re:python skripty
Přispěvatel: GdH 09 Září 2012, 13:32:51
a ještě jak jde spouštět skripty přímo z interpreteru pythonu? Udělá mi to tohle:
Kód: [Vybrat]
>>> test1.py
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'test1' is not defined
>>>

Prostředí interpretu je spíš na to, abys tam zadával přímo příkazy pythonu, externí skripty/moduly musíš importovat příkazem import. Najdi si dokumentaci.
Název: Re:python skripty
Přispěvatel: GdH 09 Září 2012, 13:33:19
Citace
Kód: [Vybrat]
#!/usr/bin/env python
to myslíš jako před název toho skriptu nebo kde?

To se píše na začátek skriptu.
Název: Re:python skripty
Přispěvatel: brbik 09 Září 2012, 13:40:34
díky za pomoc.