How can I extract a file name with dat extension in python?
文件夹中有很多文件
sample-file.dat host-111.222.333.444.dat win.2k3.dat
hello.micro.world.dat
我正在使用拆分
1 2 | file = os.path.basename(path) filename = file.split(".")[0] |
但它不适用于所有文件,是否有更好的方法来读取整个文件名,即使用点和忽略.dat扩展名
如果他们有多个点,切片并重新加入!
1 2 | file = os.path.basename(path) filename =".".join(file.split(".")[:-1]) |
这将删除最后一点之后的内容,而不检查内容,即。
- a.b.c => a.b.
- a.b.dat => a.b.
- a.exe => a
- .emacs =>错误?
- A.B.C. => a.b.c
我会用
1 2 3 4 | >>> s ="host-111.222.333.444.dat" >>> filename = s[:s.rfind(".")] >>> filename 'host-111.222.333.444' |
它就像
希望能帮助到你!
尝试
1 2 | if file.endswith('.dat'): filename = file[:-4] |
或者,请参阅此问题以获取更多答案:如何在Python中替换(或剥离)文件名中的扩展名?