python中如何获得文件名及使用endwith获得后缀

前言:

        在Python中经常会遇到需要解析一个文件的文件名及其后缀,下面介绍几种方法来获得文件名及其后缀。

常用方法:

方法一:使用 os.path

import os

filepath = '/path/to/your/file/example.txt'

# 获取文件名(含扩展名)
filename = os.path.basename(filepath)  # 'example.txt'

# 分离文件名和扩展名
name, ext = os.path.splitext(filename)  # name: 'example', ext: '.txt'

方法二:使用 pathlib(推荐,Python 3.4+)

from pathlib import Path

filepath = Path('/path/to/your/file/example.txt')

# 获取文件名(含扩展名)
filename = filepath.name  # 'example.txt'

# 获取文件名(不含扩展名)
stem = filepath.stem      # 'example'

# 获取扩展名(含点)
suffix = filepath.suffix  # '.txt'

 示例输出:

print(filename)  # example.txt
print(stem)      # example
print(suffix)    # .txt

如果要获取多个后缀

print(filepath.suffixes)  # ['.tar', '.gz']

endwith()

   endswith() 是 Python 中字符串类型的一个方法,用于判断字符串是否以指定的 后缀 结尾,常用于判断文件类型。

filename = "example.txt"

if filename.endswith(".txt"):
    print("这是一个文本文件")

多个后缀(元组)判断:

filename = "archive.tar.gz"

if filename.endswith((".zip", ".tar.gz", ".rar")):
    print("这是一个压缩文件")

结合 os.listdir() 批量筛选文件:

import os

files = os.listdir("your_folder")

txt_files = [f for f in files if f.endswith(".txt")]

常见用法场景:

  1. 过滤特定类型的文件(如 .py, .jpg, .csv 等)

  2. 区分数据文件、配置文件、日志文件等

  3. 在遍历目录时跳过临时文件或备份文件(如以 ~ 结尾)

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值