Modul path
Modul stáhnete na http://www.jorendorff.com/articles/python/path/ nebo http://pypi.python.org/pypi/path.py, rozbalíte a nainstalujete standardně pomocí python setup.py install.
Jak začít
Začněte třeba takto:
from path import path # pak vytvoříte instance path voláním prom = path('/usr/local/bin') # nebo prom = path('C:\\Program Files')
Popis
Modul činí daleko příjemnější práci se soubory a složkami než je práce se několika samostatnými moduly z distribuce. Zahrnuje je totiž v sobě v jedném třídě:
- Funkce z os.path jsou metodami path. Takže například místo os.path.abspath(os.path.normpath(f)), píšete f.normpath().abspath(). (Poznámka: os.path.split(f) se stal f.splitpath() a os.path.join(a, b) se stal a.joinpath(b), aby se zabránilo konfliktům metod řetězců split() a join().)
- Mnoho funkcí z modulu os je také metoda path. Například os.makedirs(d) se stal d.makedirs().
- Metody path.files() a path.dirs() jsou náhradou pythonovského modulu glob. Například mydir.files('*.py') vrací seznam pythonovských souborů v adresáři, definovaném v mydir. (pokud potřebujete skutečně metodu glob(), je tam také.)
- Funkce z modulu shutil jsou také metodami path. Obzvláště metody copy(), copyfile(), copytree() a rmtree() jsou dosti užitečné.
Další fíčurky
- Metoda path.walk() vrací iterátor, který prochází rekurzivně celý adresářový strom. path.walkdirs() a path.walkfiles() fungují stejně, až na to, že prochází buď jen adresáře nebo soubory.
- path.lines() vrací řádky souboru. path.bytes() vrací binární obsah souboru jako jeden dlouhý řetězec. Existují také opačné metody path.write_lines(), path.write_bytes(), path.write_text() pro přepis nebo přidávání k souborům.
- Metoda path.touch() funguje jako Unixový příkaz touch. Aktualizuje čas souboru; pokud neexistuje, bude vytvořen nový.
- Dvě metody na práci s relativními cestami: metoda relpath() převádí objekt path na relativní cestu, přičemž jako základ bere aktuální pracovní adresář. Je to tak trochu opačná funkce abspath(). Metoda p1.relpathto(p2) vrací relativní cestu k p2 vzhledem k p1. Například na windowsech path('C:\\Python22').relpathto('C:\\Python22\\Lib\\path.py') vrací path('Lib\\path.py').
Další najdete na webu autora
Příklady
přidejte ...
Nápověda
Přímá nápověda, dokumentace k jednotlivým funkcím i jejich plný výčet neexistuje, musíte si poradit sami: NapovedaKModulum