Python Academy · Lektion

Manipulation af stier

Sammenføj, opløs og inspicér stier

Lektion 4 af 413 trin

Manipulation af stier er en gratis Python Academy-lektion på CoddyKit. Dette er lektion 4 af 4. Du kan læse hele lektionen gratis nedenfor — og derefter øve dig praktisk i browseren med en indbygget kodeeditor og en AI-vejleder, der er tilgængelig døgnet rundt. Den er en del af læringsforløbet i Python Academy, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. Python Academy-kurset indeholder 4 lektioner i alt.

Undersøge og transformere stier

Ud over at opbygge stier giver pathlib dig mulighed for at konvertere dem til absolut form, undersøge relationerne mellem dem og læse filsystemets metadata – alt sammen uden at bruge os.path.

Absolutte og relative stier

is_absolute() angiver, om en sti er forankret ved rodmappen. Relative stier fortolkes i forhold til den aktuelle mappe.

from pathlib import Path

print(Path('docs/file.txt').is_absolute())
print(Path('/usr/local').is_absolute())

Opløse en sti

resolve() omdanner en sti til en absolut sti og samler segmenterne . og ... Det er standardmetoden til at normalisere stier.

from pathlib import Path

p = Path('a/b/../c/file.txt')
print(p.resolve())

Sammenkæde med joinpath

Ud over operatoren / tilføjer joinpath() en eller flere dele. Det er praktisk, når delene kommer fra en liste.

from pathlib import Path

base = Path('project')
parts = ['src', 'main', 'app.py']
print(base.joinpath(*parts))

Relative stier mellem to placeringer

relative_to() beregner stien fra én placering i forhold til en anden. Den udløser en fejl, hvis stien ikke ligger under den angivne basissti.

from pathlib import Path

full = Path('/home/user/docs/report.txt')
rel = full.relative_to('/home/user')
print(rel)

Kontrollere et præfiks med is_relative_to

is_relative_to() kontrollerer sikkert, om en sti ligger under en anden, og returnerer en boolsk værdi i stedet for at udløse en fejl.

from pathlib import Path

p = Path('/home/user/docs/file.txt')
print(p.is_relative_to('/home/user'))
print(p.is_relative_to('/etc'))

Flere filendelser

For navne som archive.tar.gz viser suffixes alle filendelser, mens suffix kun giver den sidste.

from pathlib import Path

p = Path('archive.tar.gz')
print(p.suffix)
print(p.suffixes)

Anker og drev

Egenskaben anchor er stiens roddel. På POSIX er den typisk /, mens den på Windows indeholder drevbogstavet.

from pathlib import Path

p = Path('/usr/local/bin')
print('anchor:', p.anchor)
print('parts:', p.parts)

Læse filmetadata

stat() returnerer filsystemmetadata som f.eks. størrelsen i bytes. Her opretter vi en fil og læser dens størrelse.

from pathlib import Path

p = Path('meta.txt')
p.write_text('hello world')
print('size:', p.stat().st_size, 'bytes')

Omdøbe og flytte

rename() ændrer en stis placering eller navn. Kombineret med opbygningsmetoderne gør den omorganisering af filer overskuelig.

from pathlib import Path

old = Path('old_name.txt')
old.write_text('data')
new = old.with_name('new_name.txt')
old.rename(new)
print(new.exists(), new.read_text())

Udvide genvejen til hjemmemappen

expanduser() erstatter et indledende ~ med brugerens hjemmemappe, ligesom shellen udvider den.

from pathlib import Path

p = Path('~/configs/app.ini')
expanded = p.expanduser()
print(expanded.is_absolute())

Hurtig kontrol

Hvad gør metoden resolve() ved en sti?

Opsummering

Du har lært at sammenkæde, opløse og undersøge stier.

  • resolve danner en absolut, normaliseret sti.
  • relative_to og is_relative_to sammenligner placeringer.
  • suffix, suffixes, anchor og parts viser stiens struktur.
  • stat læser metadata, og rename flytter filer.
Gratis at komme i gang

Lær Python med en AI-underviser — gratis

Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.

Kurser
76
Lektioner
320

Ofte stillede spørgsmål

Er lektionen “Manipulation af stier” gratis?

Ja — hele teksten til “Manipulation af stier” kan læses gratis her på nettet. Hvis du vil øve dig interaktivt med en indbygget kodeeditor og en AI-vejleder døgnet rundt og få adgang til resten af Python Academy-kurset, skal du opgradere til CoddyKit PRO. Python Academy-kurset indeholder 4 lektioner i alt.

Hvad lærer jeg i “Manipulation af stier”?

Sammenføj, opløs og inspicér stier Du øver dig i Python Academy med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.

Skal jeg have erfaring for at begynde på Python Academy?

Der kræves ingen tidligere erfaring. Python Academy på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 4 af 4.

Hvor lang tid tager lektionen “Manipulation af stier”?

De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.

Kan jeg skrive og køre kode i denne Python Academy-lektion?

Ja. Alle Python Academy-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.

Alle lektioner i dette kursus

  1. Path-objektet
  2. Læsning og skrivning af filer
  3. Globbing og iteration
  4. Manipulation af stier
← Tilbage til Python Academy