• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Opis kodu Python

VPS Starter Arubacloud
0 głosów
975 wizyt
pytanie zadane 16 stycznia 2017 w Python przez Carttea5 Nowicjusz (120 p.)
import os

def foldery(sciezka):
    for root, dirs, files in os.walk(sciezka):
        poziom = root.replace(sciezka, '').count(os.sep)
        odstep = ' ' * 4 * (poziom)
        print('{}{}/'.format(odstep, os.path.basename(root)))
        odstep2 = ' ' * 4 * (poziom + 1)
        for f in files:
            print('{}{}'.format(odstep2, f))

Mógłby ktoś wytłumaczyć jakie zadanie ma czwarta linijka w tym kodzie oraz co oznacza f w 9. linii. 

2 odpowiedzi

+1 głos
odpowiedź 16 stycznia 2017 przez niezalogowany

Mógłby ktoś wytłumaczyć jakie zadanie ma czwarta linijka w tym kodzie

os.walk() zwraca kolekcję (listę, tablicę jak chcesz to nazwać) obiektów o następującym formacie: (<ścieżka do folderu>, <lista folderów>, <lista plików>), ten for to nic innego jak przypisanie do poszczególnych zmiennych elementów listy i przejście po wszystkich takich kolekcjach danych.

co oznacza f w 9. linii. 

"Dla każdego w liście files...", f to pojedynczy element z listy

https://wiki.python.org/moin/ForLoop

Polecam poduczyć się podstaw Pythona ;)

0 głosów
odpowiedź 16 stycznia 2017 przez Benek Szeryf (92,390 p.)

Mógłby ktoś wytłumaczyć jakie zadanie ma czwarta linijka w tym kodzie (...)

 Wyrażenie:

os.walk(sciezka)

tworzy obiekt, który ma 3 składniki:

  1. ścieżkę do katalogu wskazywanego przez zmienną napisową sciezka
  2. listę zawierającą katalogi zlokalizowane pod podaną wyżej ścieżką
  3. listę zawierającą pliki zlokalizowane pod podaną wyżej ścieżką

(...) co oznacza f w 9. linii.

files to lista, która może zawierać dowolną ilość elementów. Wyrażenie:

for f in files:
 ...

oznacza: weź pierwszy element z listy files i podstaw go do f. W miejscu ... wykonaj dowolne operacje. Gdy skończysz, weź drugi element z listy files i podstaw go do zmiennej f. Znów wykonaj dowolne operacje. I tak dalej aż f przejdzie wszystkie elementy listy files.

Podobne pytania

0 głosów
1 odpowiedź 1,148 wizyt
+1 głos
2 odpowiedzi 323 wizyt
0 głosów
1 odpowiedź 464 wizyt
pytanie zadane 25 sierpnia 2022 w Python przez Andek Początkujący (360 p.)

92,966 zapytań

141,930 odpowiedzi

321,163 komentarzy

62,299 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Wprowadzenie do ITsec, tom 2

Można już zamawiać tom 2 książki "Wprowadzenie do bezpieczeństwa IT" - będzie to około 650 stron wiedzy o ITsec (17 rozdziałów, 14 autorów, kolorowy druk).

Planowana premiera: 30.09.2024, zaś planowana wysyłka nastąpi w drugim tygodniu października 2024.

Warto preorderować, tym bardziej, iż mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy dodatkowe 15% zniżki! Dziękujemy zaprzyjaźnionej ekipie Sekuraka za kod dla naszej Społeczności!

...