Zanurkuj w Pythonie/Znajdowanie ścieżki: Różnice pomiędzy wersjami

Usunięta treść Dodana treść
Nie podano opisu zmian
Beau (dyskusja | edycje)
drobne techniczne
Linia 1:
{{Podświetl|py}}
 
Czasami, kiedy uruchomimy skrypt języka Python z linii poleceń, chcielibyśmy wiedzieć, w jakim miejscu na dysku ten skrypt się znajduje.
 
Linia 9 ⟶ 7:
Jeśli jeszcze tego nie zrobiliście, możecie pobrać ten oraz inne przykłady używane w tej książce.
 
<source lang="python">import sys, os
 
print 'sys.argv[0] =', sys.argv[0] #(1)
pathname = os.path.dirname(sys.argv[0]) #(2)
print 'path =', pathname
print 'full path =', os.path.abspath(pathname) #(3)</source>
# Niezależnie od tego, w jaki sposób uruchomicie skrypt, <tt>sys.argv[0]</tt> będzie zawsze zawierać nazwę skryptu, w dokładnie takiej postaci, w jakiej pojawiła się ona w linii poleceń. Jak wkrótce zobaczymy, nazwa może, choć nie musi, zawierać informację o pełnej ścieżce.
Linia 78 ⟶ 76:
'''Przykład 16.6. Uruchomienie skryptu z bieżącego katalogu'''
 
<source lang="python">import sys, os, re, unittest
 
def regressionTest():
path = os.getcwd() #(1)
sys.path.append(path) #(2)
files = os.listdir(path) #(3)</source>
 
# Zamiast ustalania ścieżki z testami na katalog, w którym znajduje się obecnie wykonywany skrypt, ustalamy ją na bieżący katalog roboczy. Będzie to ten katalog, w którym byliśmy w momencie uruchomienia skryptu, a więc niekoniecznie oznacza katalog, w którym znajduje się skrypt. (Jeśli nie chwytasz tego od razu, przeczytaj to zdanie powoli kilka razy).