Dengan Python, misalkan saya memiliki jalur seperti ini:
/folderA/folderB/folderC/folderD/
Bagaimana saya bisa mendapatkan folderD
bagiannya saja?
python
path
path-manipulation
pepero
sumber
sumber
rstrip('/')
akan lebih sederhana tetapi kemudian dengan cepat menyadari bahwa saya harus menggunakanrstrip(os.path.sep)
, jadi jelas penggunaannormpath
dibenarkan.'\\\\?\\D:\\A\\B\\C\\'
dan'\\\\?\\UNC\\svr\\B\\C\\'
(mengembalikan string kosong) Solusi ini berfungsi untuk semua kasus.Anda bisa melakukannya
UPDATE1: Pendekatan ini berfungsi jika Anda memberikan /folderA/folderB/folderC/folderD/xx.py. Ini memberikan xx.py sebagai nama dasarnya. Kurasa itu bukan yang kau inginkan. Jadi Anda bisa melakukan ini -
UPDATE2: Seperti yang ditunjukkan oleh lars, lakukan perubahan untuk mengakomodasi trailing '/'.
sumber
Dengan python 3 Anda dapat menggunakan
pathlib
modul (pathlib.PurePath
misalnya):Jika Anda ingin nama folder terakhir tempat file berada:
sumber
Inilah pendekatan saya:
sumber
Saya sedang mencari solusi untuk mendapatkan foldername terakhir di mana file itu berada, saya hanya menggunakan
split
dua kali, untuk mendapatkan bagian yang tepat. Ini bukan pertanyaannya tetapi google memindahkan saya ke sini.sumber
Solusi naif (Python 2.5.2+):
sumber
Saya suka metode bagian Path untuk ini:
sumber
sumber
os.path
modul.sumber
folderD
. notfolderC
os.path
modul.