Saya hanya ingin mendapatkan jalur folder dari jalur lengkap ke file.
Misalnya T:\Data\DBDesign\DBDesign_93_v141b.mdb
dan saya ingin mendapatkan hanya T:\Data\DBDesign
(tidak termasuk \DBDesign_93_v141b.mdb
).
Saya telah mencoba sesuatu seperti ini:
existGDBPath = r'T:\Data\DBDesign\DBDesign_93_v141b.mdb'
wkspFldr = str(existGDBPath.split('\\')[0:-1])
print wkspFldr
tetapi itu memberi saya hasil seperti ini:
['T:', 'Data', 'DBDesign']
yang bukan hasil yang saya butuhkan (menjadi T:\Data\DBDesign
).
Adakah ide tentang bagaimana saya bisa mendapatkan jalur ke file saya?
os.sep.join(existGDBPath.split(os.sep)[:-1]
terlihat lebih cantik.DENGAN MODUL PATHLIB (JAWABAN DIPERBARUI)
Seseorang harus mempertimbangkan menggunakan pathlib untuk pengembangan baru. Ini ada di stdlib untuk Python3.4, tetapi tersedia di PyPI untuk versi sebelumnya. Pustaka ini menyediakan metode yang lebih berorientasi objek untuk memanipulasi jalur
<opinion>
dan lebih mudah dibaca dan diprogram dengan</opinion>
.DENGAN MODUL OS
Gunakan modul os.path :
Anda dapat melanjutkan dan berasumsi bahwa jika Anda perlu melakukan semacam manipulasi nama file, itu sudah diterapkan
os.path
. Jika tidak, Anda mungkin masih perlu menggunakan modul ini sebagai blok penyusun.sumber
Path().parent
apa yang saya cari!Submodul os.path bawaan memiliki fungsi untuk tugas itu.
sumber
Ini kodenya:
sumber
Ini adalah alat bantu utilitas kecil saya untuk membagi jalur file int, token jalur:
sumber
Siapa pun yang mencoba melakukan ini di antarmuka kalkulator bidang Tabel GIS ESRI dapat melakukan ini dengan parser Python :
PathToContainingFolder =
yang seperti itu
\ Users \ me \ Desktop \ New folder \ file.txt
menjadi
\ Users \ me \ Desktop \ New folder
sumber