Apa perbedaan antara os.path.basename()dan os.path.dirname()?
Saya sudah mencari jawaban dan membaca beberapa tautan, tetapi tidak mengerti. Adakah yang bisa memberikan penjelasan sederhana?
Apa perbedaan antara os.path.basename()dan os.path.dirname()?
Saya sudah mencari jawaban dan membaca beberapa tautan, tetapi tidak mengerti. Adakah yang bisa memberikan penjelasan sederhana?
Jawaban:
Kedua fungsi tersebut menggunakan os.path.split(path)fungsi tersebut untuk membagi nama jalur pathmenjadi pasangan; (head, tail).
The os.path.dirname(path)mengembalikan fungsi kepala jalan.
Misalnya: Dirname dari '/foo/bar/item'adalah '/foo/bar'.
The os.path.basename(path)fungsi mengembalikan ekor jalan.
Misalnya: Nama dasar '/foo/bar/item'pengembalian'item'
Dari: http://docs.python.org/2/library/os.path.html#os.path.basename
os.path.basename(os.path.dirname(path))
'foo.bar'dan os.path.dirname (nama_file) mengembalikan sebuah string kosong: ''.
Untuk meringkas apa yang disebutkan oleh Breno di atas
Katakanlah Anda memiliki variabel dengan jalur ke file
path = '/home/User/Desktop/myfile.py'
os.path.basename(path) mengembalikan string 'myfile.py'
dan
os.path.dirname(path)mengembalikan string '/home/User/Desktop'(tanpa garis miring '/')
Fungsi-fungsi ini digunakan ketika Anda harus mendapatkan nama file / nama direktori yang diberi nama path lengkap.
Jika path file hanya nama file (misalnya, bukan path = '/home/User/Desktop/myfile.py'Anda yang hanya punya myfile.py), os.path.dirname(path)kembalikan string kosong.
itemdenganitem/, yang merupakan direktori, kemudianos.path.split('foo/bar/item/')mengembalikan('foo/bar/item', '').