如何用os.path.splitext获取文件的扩展名?

2026-04-02 03:171阅读0评论SEO教程
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计444个文字,预计阅读时间需要2分钟。

如何用os.path.splitext获取文件的扩展名?

python方式一:通过字符串,可以很方便地获取文件扩展名

实现代码:filename=demo.pngext=filename.split(.)[1]print(ext)

方式一

通过字符串拆分,可以很容易的获取文件扩展名

实现代码

filename = "demo.png" ext = filename.split(".")[-1] print(ext) # png

如果传入一个url

filename = "demo.png?size=50x60" ext = filename.split(".")[-1] print(ext) # png?size=50x60

方式二

通过内置函数,也可以获取文件扩展名

方法签名

# 输入一个文件名,或者url,返回文件名的名称部分和扩展名 def os.path.splitext(filename) -> name, ext

使用示例

# -*- coding: utf-8 -*- import os filename = "demo.png" name, ext = os.path.splitext(filename) print(name, ext) # demo .png

注意:获取的扩展名带有分隔符.

如果传入url

import os filename = "demo.png?size=50x60" name, ext = os.path.splitext(filename) print(name, ext) # demo .png?size=50x60

通用方式

如果是url的地址,我们可以先使用urlparse先解析出文件路径,再解析文件扩展名

实现代码

如何用os.path.splitext获取文件的扩展名?

# -*- coding: utf-8 -*- import os from urllib.parse import urlparse def get_filename_ext(filename): """ 获取文件名或url中的扩展名 """ url_path = urlparse(filename).path _, ext = os.path.splitext(url_path) return ext if __name__ == '__main__': filename = "img.558idc.com/uploadfile/allimg/20230829/demo.jpg?size=50x60" ext = get_filename_ext(filename) print(ext) # .png

总结

两种方式差不多,如果传入的文件路径是一个url,参数不会被处理

参考 Python编程:urlsplit, urlparse简单区别

本文共计444个文字,预计阅读时间需要2分钟。

如何用os.path.splitext获取文件的扩展名?

python方式一:通过字符串,可以很方便地获取文件扩展名

实现代码:filename=demo.pngext=filename.split(.)[1]print(ext)

方式一

通过字符串拆分,可以很容易的获取文件扩展名

实现代码

filename = "demo.png" ext = filename.split(".")[-1] print(ext) # png

如果传入一个url

filename = "demo.png?size=50x60" ext = filename.split(".")[-1] print(ext) # png?size=50x60

方式二

通过内置函数,也可以获取文件扩展名

方法签名

# 输入一个文件名,或者url,返回文件名的名称部分和扩展名 def os.path.splitext(filename) -> name, ext

使用示例

# -*- coding: utf-8 -*- import os filename = "demo.png" name, ext = os.path.splitext(filename) print(name, ext) # demo .png

注意:获取的扩展名带有分隔符.

如果传入url

import os filename = "demo.png?size=50x60" name, ext = os.path.splitext(filename) print(name, ext) # demo .png?size=50x60

通用方式

如果是url的地址,我们可以先使用urlparse先解析出文件路径,再解析文件扩展名

实现代码

如何用os.path.splitext获取文件的扩展名?

# -*- coding: utf-8 -*- import os from urllib.parse import urlparse def get_filename_ext(filename): """ 获取文件名或url中的扩展名 """ url_path = urlparse(filename).path _, ext = os.path.splitext(url_path) return ext if __name__ == '__main__': filename = "img.558idc.com/uploadfile/allimg/20230829/demo.jpg?size=50x60" ext = get_filename_ext(filename) print(ext) # .png

总结

两种方式差不多,如果传入的文件路径是一个url,参数不会被处理

参考 Python编程:urlsplit, urlparse简单区别