Zanurkuj w Pythonie/Wyjątki i operacje na plikach - wszystko razem: Różnice pomiędzy wersjami

Usunięta treść Dodana treść
Beau (dyskusja | edycje)
sprzątanie kodu
Linia 1:
== Wszystko razem ==
 
Jeszcze raz ułożymy wszystkie puzzle domina w jednym miejscu. Już poznaliśmy, w jaki sposób działa każda linia kodu. Powrócimy do tego jeszcze raz i zobaczymy, jak to wszystko jest ze sobą dopasowane.
 
Linia 6 ⟶ 5:
|6.21|<code>listDirectory</code>
|tekst=
<nowikisource lang="python">def listDirectory(directory, fileExtList): #(1)
u"zwraca listę obiektów zawierających metadane dla plików o podanych rozszerzeniach"
fileList = [os.path.normcase(f) for f in os.listdir(directory)]
Linia 15 ⟶ 14:
subclass = "%sFileInfo" % os.path.splitext(filename)[1].upper()[1:] #(4)
return hasattr(module, subclass) and getattr(module, subclass) or FileInfo #(5)
return [getFileInfoClass(f)(f) for f in fileList] #(6)</nowikisource>
 
# <code>listDirectory</code> jest główną atrakcją tego modułu. Przyjmuje ona na wejściu katalog (np. <tt>c:\music\_singles\</tt>) i listę interesujących nas rozszerzeń plików (jak np. <code>['.mp3']</code>), a następnie zwraca listę instancji klas, które są podklasami słownika, a przechowują metadane na temat każdego interesującego nas pliku w tym katalogu. I to wszystko jest wykonywane za pomocą kilku prostych linii kodu.