Ce face os.path.join()
os.path.join("date", "2026", "raport.csv") produce date/2026/raport.csv pe Linux și macOS și date\2026\raport.csv pe Windows. Evită lipirea manuală cu + "/" +, care nu este portabilă.
Dacă una dintre bucăți este o cale absolută (începe cu /), tot ce era înaintea ei este ignorat. Pentru cod nou, pathlib.Path cu operatorul / face același lucru mai elegant.
Parametri
| Parametru | Descriere |
|---|---|
cale |
Prima bucată. |
*bucati |
Restul bucăților, în ordine. |
Ce returnează
Calea unită, ca text.
Exemple
Exemplul 1: Construirea căilor
import os
print(os.path.join("date", "2026", "raport.csv"))
print(os.path.join("/home/ana", "poze", ""))
print(os.path.join("proiect", "/etc", "hosts"))
print(os.sep)
Rezultat
date/2026/raport.csv
/home/ana/poze/
/etc/hosts
/
Exemplul 2: Fișiere dintr-un director
import os
os.makedirs("rapoarte", exist_ok=True)
for luna in ["ian", "feb"]:
cale = os.path.join("rapoarte", f"vanzari_{luna}.txt")
with open(cale, "w", encoding="utf-8") as f:
f.write(luna)
print(sorted(os.listdir("rapoarte")))
Rezultat
['vanzari_feb.txt', 'vanzari_ian.txt']
Greșeli frecvente
- Pui
/la începutul unei bucăți din mijloc:join("proiect", "/date")dă/date, pierzândproiect.
Comenzi înrudite
pathlib.Path: Căile ca obiecte: unire cu /, citire, scriere și verificări, într-un singur loc.os.path.basename(), dirname() și split(): Separă numele fișierului de directorul în care se află.os.path.abspath(), realpath(), normpath(), normcase(): Transformă o cale în cale absolută, rezolvă legăturile simbolice și curăță părțile ca „..”.