Jika saya memiliki file yang terbuka, apakah ada os
panggilan untuk mendapatkan jalur lengkap sebagai string?
f = open('/Users/Desktop/febROSTER2012.xls')
Dari f
, bagaimana saya akan mendapatkannya "/Users/Desktop/febROSTER2012.xls"
?
Kuncinya di sini adalah name
atribut f
objek yang mewakili file yang dibuka. Anda mendapatkannya seperti itu:
>>> f = open('/Users/Desktop/febROSTER2012.xls')
>>> f.name
'/Users/Desktop/febROSTER2012.xls'
Apakah itu membantu?
tempfile.TemporaryFile(mode='w', prefix='xxx', suffix='.txt')
tidak berfungsi!tempfile
modul, khusus untuktempfile.NamedTemporaryFile
, tepat di bawah dokumentasi yangtempfile.TemporaryFile
Anda sebutkan. Ini adalah kasus khusus untuk file sementara dan, seperti yang terlihat di dokumen, sudah ada solusi.tempfile.TemporaryFile
tidak dimaksudkan untuk digunakan jika Anda ingin membaca namanya.Saya memiliki masalah yang sama persis. Jika Anda menggunakan jalur relatif os.path.dirname (jalur) hanya akan mengembalikan jalur relatif. os.path.realpath melakukan trik:
sumber
os.path.realpath
akan mengembalikan '~ / text.txt' alih-alih '~ / Documents / text.txt'.Dan jika Anda hanya ingin mendapatkan nama direktori dan tidak perlu nama file yang menyertainya, maka Anda dapat melakukannya dengan cara konvensional berikut menggunakan
os
modul Python.Dengan cara ini Anda bisa mendapatkan struktur direktori.
sumber
f = open('febROSTER2012.xls')
. Bagaimana Anda bisa mencapai jalur lengkap?Anda juga bisa mendapatkannya seperti ini.
sumber