Os Path Module on Pythonin käyttöjärjestelmämoduulin alimoduuli, jota käytetään yleiseen polkunimien käsittelyyn. Tässä artikkelissa opimme os.path.join():sta ja tiedostopolkujen turvallisesta käsittelystä Python OS .
Python os.path.join() -menetelmän syntaksi
Syntaksi: os.path.join(polku, *polut)
Parametri:
- polku : Polkumainen objekti, joka edustaa tiedostojärjestelmän polkua.
- *polku : Polkumainen objekti, joka edustaa tiedostojärjestelmän polkua. Se edustaa polun komponentteja, jotka liitetään. Polun kaltainen objekti on joko merkkijono tai tavuinen objekti, joka edustaa polkua.
- Huomautus: Erityinen syntaksi *argumentit (tässä *polut) pythonin funktiomäärittelyissä käytetään välittämään muuttuva määrä argumentteja funktiolle.
Palautustyyppi: Tämä menetelmä palauttaa merkkijonon, joka edustaa ketjutetun polun komponentteja.
os.path.join()-metodi Pythonissa
The os.path.join() Pythonin menetelmä yhdistää yhden tai useamman polkukomponentin älykkäästi. Tämä menetelmä ketjuttaa eri polkukomponentit täsmälleen yhdellä hakemistoerottimella ('/') jokaista ei-tyhjää osaa lukuun ottamatta viimeistä polkukomponenttia. Jos viimeinen liitettävä polkukomponentti on tyhjä, lopussa on hakemistoerotin ('/').
Jos polkukomponentti edustaa absoluuttista polkua, kaikki aiemmin yhdistetyt komponentit hylätään ja yhdistäminen jatkuu absoluuttisesta polkukomponentista.
os.path.join() funktioesimerkkejä ja käyttötapauksia
Alla on esimerkkejä ja käyttötapauksia, joiden avulla voimme yhdistää tiedostopolut ja käsitellä tiedostopolkuja turvallisesti Python SINÄ.
Polun komponenttien ketjuttaminen
Tässä esimerkissä os.path.join()-menetelmää käytetään polkukomponenttien ketjuttamiseen, mikä muodostaa tehokkaasti kelvollisia polkuja. Se varmistaa eri alustojen yhteensopivuuden yhdistämällä komponentit oikein.
Python 3
import> os> # Path> path>=> '/home'> # Join various path components> print>(os.path.join(path,>'User/Desktop'>,>'file.txt'>))> # Path> path>=> 'User/Documents'> # Join various path components> print>(os.path.join(path,>'/home'>,>'file.txt'>))> # Path> path>=> '/User'> # Join various path components> print>(os.path.join(path,>'Downloads'>,>'file.txt'>,>'/home'>))> |
>
b- ja b-puu
>Lähtö
/home/User/Desktop/file.txt /home/file.txt /home>
Tiedostojen lukeminen ja kirjoittaminen
Tässä esimerkissäos.path.join()>menetelmää käytetään muodostamaan täydellinen tiedostopolku yhdistämällä perushakemisto ja tiedostonimi. Rakennettua polkua käytetään sitten nimetyn tiedoston sisällön lukemiseenexample.txt>.
esimerkki.txt
techcodeview.com>
Python 3
import> os> # Base directory and filename> base_dir>=> '/home/user'> filename>=> 'example.txt'> # Construct the full path> full_path>=> os.path.join(base_dir, filename)> # Reading and writing files using the full path> with>open>(full_path,>'r'>) as>file>:> >content>=> file>.read()> >print>(content)> |
>
>
Lähtö:
techcodeview.com>
Tiedostojen luettelointi hakemistossa
Tässä esimerkissä menetelmää 'os.path.join()' käytetään luomaan koko polku kullekin nykyisen työhakemiston tiedostolle. Täydelliset polut tulostetaan, mikä mahdollistaa kattavan luettelon kaikista hakemiston tiedostoista.
Python 3
import> os> # Current working directory> current_dir>=> os.getcwd()> # List files in the current directory> files_in_dir>=> os.listdir(current_dir)> # Iterate over files and print their full paths> for> file_name>in> files_in_dir:> >file_path>=> os.path.join(current_dir, file_name)> >print>(file_path)> |
>
>Lähtö
/home/guest/sandbox/1e914974-f313-477e-a710-2057a0037607.in /home/guest/sandbox/driver /home/guest/sandbox/Solution.py>
Polkujen iterointi For-silmukalla
Tässä esimerkissä os.path.join()-menetelmää käytetään silmukassa luomaan dynaamisesti koko polku jokaiselle luettelossa olevalle tiedostonimelle. Rakennetut polut tulostetaan sitten osoittamaan kunkin vastaavan tiedoston käsittelyä.
fibonacci-sarja vuonna v
Python 3
import> os> # List of file names> names>=> [>'file1.txt'>,>'file2.txt'>,>'file3.txt'>]> # Iterate over file names and process each file> for> file_name>in> names:> >file_path>=> os.path.join(>'/home/user'>, file_name)> >print>(f>'Processing file: {file_path}'>)> |
>
>Lähtö
Processing file: /home/user/file1.txt Processing file: /home/user/file2.txt Processing file: /home/user/file3.txt>