译(四十一)-Python从路径中获取文件名
2022/1/1 11:07:31
本文主要是介绍译(四十一)-Python从路径中获取文件名,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
文章首发及后续更新:https://mwhls.top/3381.html
新的更新内容请到mwhls.top查看。
无图/无目录/格式错误/更多相关请到上方的文章首发页面查看。
目录 1. Python 如何从路径中获取没有拓展名的文件名? 2. How to get the filename without the extension from a path in Python?stackoverflow热门问题目录
如有翻译问题欢迎评论指出,谢谢。
Python 如何从路径中获取没有拓展名的文件名?
Joan Venge asked:
- Python 中如何获取不包括拓展名的文件名?
- 例如这个路径
/path/to/some/file.txt
里的file
。
Answers:
Geo – vote: 1561
得到不包括拓展名的文件名:
import os print(os.path.splitext("/path/to/some/file.txt")[0])
输出:
/path/to/some/file
Documentation for
os.path.splitext
.
文档:os.path.splitext
.特别注意:如果文件名有多个点,只有最后一个代表拓展的点会被去除。
例如:import os print(os.path.splitext("/path/to/some/file.txt.zip.asc")[0])
输出:
/path/to/some/file.txt.zip
如果需要处理这种情况,可以看其他人的回答。
注:这篇翻译的三个回答没有涉及到这个情况。mxdbld – vote: 792
在 Python 3.4+ 中可以使用
pathlib
中的.stem
。from pathlib import Path
Path(’/root/dir/sub/file.ext’).stem
将返回
'file'
注意,如果文件有多个拓展名,
.stem
只会移除最后一个。例如,Path('file.tar.gz').stem
将会返回'file.tar'
。gimel – vote: 705
这样坐:
>>> import os >>> base=os.path.basename('/root/dir/sub/file.ext') >>> base 'file.ext' >>> os.path.splitext(base) ('file', '.ext') >>> os.path.splitext(base)[0] 'file'
特别注意:如果文件名中有超过一个
.
,只有最后一个会被移除。例如:/root/dir/sub/file.ext.zip -> file.ext
/root/dir/sub/file.ext.tar.gz -> file.ext.tar
见其它回答来解决这个问题。
注:这篇翻译的三个回答没有涉及到这个情况。
How to get the filename without the extension from a path in Python?
Joan Venge asked:
- How to get the filename without the extension from a path in Python?
Python 中如何获取不包括拓展名的文件名? - For instance, if I had
/path/to/some/file.txt
, I would wantfile
.
例如这个路径/path/to/some/file.txt
里的file
。
- How to get the filename without the extension from a path in Python?
Answers:
Geo – vote: 1561
Getting the name of the file without the extension:
得到不包括拓展名的文件名:import os print(os.path.splitext("/path/to/some/file.txt")[0])
Prints:
输出:/path/to/some/file
Documentation for
os.path.splitext
.
文档:os.path.splitext
.Important Note: If the filename has multiple dots, only the extension after the last one is removed. For example:
特别注意:如果文件名有多个点,只有最后一个代表拓展的点会被去除。
例如:import os print(os.path.splitext("/path/to/some/file.txt.zip.asc")[0])
Prints:
输出:/path/to/some/file.txt.zip
See other answers below if you need to handle that case.
如果需要处理这种情况,可以看其他人的回答。
注:这篇翻译的三个回答没有涉及到这个情况。mxdbld – vote: 792
Use
.stem
frompathlib
in Python 3.4+
在 Python 3.4+ 中可以使用pathlib
中的.stem
。from pathlib import Path
Path(’/root/dir/sub/file.ext’).stem
will return
将返回'file'
Note that if your file has multiple extensions
.stem
will only remove the last extension. For example,Path('file.tar.gz').stem
will return'file.tar'
.
注意,如果文件有多个拓展名,.stem
只会移除最后一个。例如,Path('file.tar.gz').stem
将会返回'file.tar'
。gimel – vote: 705
You can make your own with:
这样坐:>>> import os >>> base=os.path.basename('/root/dir/sub/file.ext') >>> base 'file.ext' >>> os.path.splitext(base) ('file', '.ext') >>> os.path.splitext(base)[0] 'file'
Important note: If there is more than one
.
in the filename, only the last one is removed. For example:
特别注意:如果文件名中有超过一个.
,只有最后一个会被移除。例如:/root/dir/sub/file.ext.zip -> file.ext
/root/dir/sub/file.ext.tar.gz -> file.ext.tar
See below for other answers that address that.
见其它回答来解决这个问题。
注:这篇翻译的三个回答没有涉及到这个情况。
这篇关于译(四十一)-Python从路径中获取文件名的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-26Python基础编程
- 2024-11-25Python编程基础:变量与类型
- 2024-11-25Python编程基础与实践
- 2024-11-24Python编程基础详解
- 2024-11-21Python编程基础教程
- 2024-11-20Python编程基础与实践
- 2024-11-20Python编程基础与高级应用
- 2024-11-19Python 基础编程教程
- 2024-11-19Python基础入门教程
- 2024-11-17在FastAPI项目中添加一个生产级别的数据库——本地环境搭建指南