Os Path Module ir Python OS moduļa apakšmodulis, ko izmanto kopīgām ceļu nosaukuma manipulācijām. Šajā rakstā mēs uzzināsim par os.path.join() un failu ceļu drošu apstrādi Python OS .
Python os.path.join() metodes sintakse
Sintakse: os.path.join(ceļš, *ceļi)
Parametrs:
- ceļš : ceļam līdzīgs objekts, kas attēlo failu sistēmas ceļu.
- *ceļš : ceļam līdzīgs objekts, kas attēlo failu sistēmas ceļu. Tas apzīmē savienojamās ceļa sastāvdaļas. Ceļam līdzīgs objekts ir virknes vai baitu objekts, kas attēlo ceļu.
- Piezīme: Īpašā sintakse *args (šeit *ceļi) funkciju definīcijās python izmanto, lai funkcijai nodotu mainīgu argumentu skaitu.
Atgriešanas veids: Šī metode atgriež virkni, kas apzīmē sasaistīto ceļa komponentus.
os.path.join() metode Python
The os.path.join() Metode programmā Python saprātīgi savieno vienu vai vairākus ceļa komponentus. Šī metode apvieno dažādus ceļa komponentus ar tieši vienu direktoriju atdalītāju (“/”), kas seko katrai daļai, kas nav tukša, izņemot pēdējo ceļa komponentu. Ja pēdējais pievienojamais ceļa komponents ir tukšs, beigās tiek ievietots direktoriju atdalītājs (“/”).
Ja ceļa komponents ir absolūts ceļš, tad visi iepriekš savienotie komponenti tiek atmesti, un savienošana turpinās no absolūtā ceļa komponenta.
os.path.join() Funkciju piemēri un lietojuma gadījumi
Tālāk ir sniegti daži piemēri un lietošanas gadījumi, kuros mēs varam savienot failu ceļus un droši rīkoties ar failu ceļiem Python TU.
Ceļa komponentu savienošana
Šajā piemērā metode 'os.path.join()' tiek izmantota, lai savienotu ceļa komponentus, efektīvi veidojot derīgus ceļus. Tas nodrošina saderību starp platformām, pareizi savienojot komponentus.
Python3
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'>))> |
>
kartes atkārtošana java
>Izvade
/home/User/Desktop/file.txt /home/file.txt /home>
Failu lasīšana un rakstīšana
Šajā piemērāos.path.join()>metode tiek izmantota, lai izveidotu pilnīgu faila ceļu, savienojot bāzes direktoriju un faila nosaukumu. Izveidotais ceļš tiek izmantots, lai nolasītu nosauktā faila saturuexample.txt>.
example.txt
techcodeview.com>
Python3
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)> |
>
>
Izvade:
techcodeview.com>
Failu uzskaitīšana direktorijā
Šajā piemērā metode 'os.path.join()' tiek izmantota, lai ģenerētu pilnu ceļu katram failam pašreizējā darba direktorijā. Pēc tam tiek izdrukāti visi ceļi, kas ļauj iegūt visaptverošu visu direktorijā esošo failu sarakstu.
Python3
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)> |
>
>Izvade
/home/guest/sandbox/1e914974-f313-477e-a710-2057a0037607.in /home/guest/sandbox/driver /home/guest/sandbox/Solution.py>
Atkārtojiet ceļus ar For Loop
Šajā piemērā metode 'os.path.join()' tiek izmantota cilpas ietvaros, lai dinamiski izveidotu pilnu ceļu katram norādītajam faila nosaukumam. Pēc tam izveidotie ceļi tiek izdrukāti, lai norādītu katra attiecīgā faila apstrādi.
Python3
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}'>)> |
>
Srī Ramanudžans
>Izvade
Processing file: /home/user/file1.txt Processing file: /home/user/file2.txt Processing file: /home/user/file3.txt>