爱吃泡芙的汤圆 2022-03-12 17:57 采纳率: 100%
浏览 32
已结题

关于python的os模块的问题!

事情是这样的,我需要使用python的os模块进行获取文件夹内的文件,但是过程中遇到了一些问题!
这是我的一个样例文件夹

img

这是没问题的代码:

import os
path = r"C:\Users\YKJ\Desktop\测试"
name_list = os.listdir(path)
for file in name_list:
    file_list = os.path.splitext(file)
    print(file_list)

这是运行结果

('新建 BMP 图像', '.bmp')
('新建 Microsoft PowerPoint 演示文稿', '.pptx')
('新建 Microsoft Publisher Document', '.pub')
('新建 Microsoft Word 文档', '.docx')
('新建 文本文档', '.txt')
('新建文件夹', '')

可以很成功的把文件名和文件后缀名进行分离!
但是!
我把文件里的添加上一个这么一个目录!

img

然后我们在看看运行结果!

('新建 BMP 图像', '.bmp')
('新建 Microsoft PowerPoint 演示文稿', '.pptx')
('新建 Microsoft Publisher Document', '.pub')
('新建 Microsoft Word 文档', '.docx')
('新建 文本文档', '.txt')
('新建文件夹', '')
('新建文件夹', '.123')

最后会出现问题?
他把目录的文件夹命名给区分开了!
最后:
该怎么区分一个文件里的目录和文件呢?
被这个小bug卡住了!

  • 写回答

4条回答 默认 最新

  • 陈年椰子 2022-03-12 18:10
    关注

    我没注意看代码, 这样试试,把目录拼接起来

    import os
    path = r"C:\Users\YKJ\Desktop\测试"
    name_list = os.listdir(path)
    for file in name_list:
        file_path = os.path.join(check_path, file)
        if os.path.isdir(file_path):
            print("目录",file)
        else:
            file_list = os.path.splitext(file)
            print(file_list)
    
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 3月20日
  • 已采纳回答 3月12日
  • 创建了问题 3月12日

悬赏问题

  • ¥15 VMware安装虚拟网络驱动程序不成功,如何解决?(操作系统-linux)
  • ¥15 MAC安装佳能LBP2900驱动的网盘提取码
  • ¥400 微信停车小程序谁懂的来
  • ¥15 ATAC测序到底用什么peak文件做Diffbind差异分析
  • ¥15 安装ubantu过程中第一个vfat 文件挂载失败
  • ¥20 GZ::CTF如何兼容一些靶机?
  • ¥15 etcd集群部署问题
  • ¥20 谁可以帮我一下问一下各位
  • ¥15 为何重叠加权后love图的SMD与svyCreateTableOne函数绘制基线表的不一致
  • ¥15 QFILHelper怎么恢复全字库,提示进程已完成,只能恢复分区文件