1. 程式人生 > 實用技巧 >os.path.basename()和os.path.splitext()

os.path.basename()和os.path.splitext()

1、os.path.splitext()是用來分離檔名與副檔名;

2、os.path.basename()他返回的是一個base name,我認為就是路徑最後一個檔名。

import os
fname = "D:\\Python\\fig\\data.txt"
files = "D:/file/cat/dog.jpg"
basename = os.path.basename(fname)
splittesxt = os.path.splitext(fname)
cfg = os.path.splitext(os.path.basename(fname))[0]

basename1 = os.path.basename(files)
splittesxt1 
= os.path.splitext(files) cfg1 = os.path.splitext(os.path.basename(files))[0] print("basename:",basename) print("splittext:",splittesxt) print("cfg:",cfg) print("basename1:",basename1) print("splittext1:",splittesxt1) print("cfg1:",cfg1)

output:

basename: D:\Python\fig\data.txt
splittext: ('D:\\Python\\fig\\data
', '.txt') cfg: D:\Python\fig\data basename1: dog.jpg splittext1: ('D:/file/cat/dog', '.jpg') cfg1: dog

從上面程式碼看出,貌似只有路徑名寫成:

files = "D:/file/cat/dog.jpg"

os.path.basename()才會和我們想象的結果一樣。也可能是我的python版本是:Python 3.6.9的原因。