如何使用Python glob.glob()获取并打印子目录下的纯文件名
方案1:使用os.path.basename提取文件名(兼容所有Python版本)
你可以借助标准库os的os.path.basename()方法直接提取路径末尾的纯文件名,同时建议给glob.glob添加recursive=True参数保证**通配符的递归生效,还可以加文件判断避免输出子目录本身的名称:
import glob import os path = '/Users/msmacbook/Desktop/test/' for x in glob.glob(path+'**/*', recursive=True): # 仅处理文件,过滤子目录 if os.path.isfile(x): # 提取路径最后一段的文件名 print(os.path.basename(x))
方案2:使用pathlib实现(Python3.4及以上版本推荐)
更简洁的面向对象路径处理方式,不需要手动拆分路径:
from pathlib import Path path = Path('/Users/msmacbook/Desktop/test/') # 递归遍历所有路径 for file in path.rglob('*'): if file.is_file(): # 直接获取纯文件名 print(file.name)
两种方法都可以输出你需要的纯文件名结果。
内容的提问来源于stack exchange,提问作者user8211795
相关产品推荐
相关产品推荐

