zoukankan      html  css  js  c++  java
  • python-----文件自动归类

    • 如何移动文件? →  使用内置模块来实现
    • 归类的规则是什么? → 手动(预设文件夹)/ 自动(创建文件夹)
    import shutil
    import os
    path = './' #由于这里是相对路径, 所以需要把这个代码文件和你要处理的文件放到同一文件夹里
    files = os.listdir(path)
    for f in files:
        #f.png
        #./png
        folder_name = './' + f.split('.')[-1]
        if not os.path.exists(folder_name):
            os.makedirs(folder_name)
            shutil.move(f,folder_name)
        else:
            shutil.move(f,folder_name)

    以下代码素材自取:链接:https://pan.baidu.com/s/1BKELJfe9lZpmBOgzvCSq4w    提取码:b3rb 

    # 1. 把 jpg,png,gif 文件夹中的所有文件移动到 image 文件夹中,然后删除 jpg,png,gif 文件夹
    # 2. 把 doc,docx,md,ppt 文件夹中的所有文件移动到 document 文件夹中,然后删除
    
    import os
    import shutil
    # 需要把路径替换成你的文件夹所在路径,当把这个代码文件放在要处理的文件夹外一层时,可以使用下面的相对路径写法
    path = './problem2_files'
    # 创建目标文件夹
    os.makedirs(path + '/image')
    os.makedirs(path + '/document')
    # 将需要处理的后缀名存储到list中
    image_suffix = ['jpg', 'png', 'gif']
    doc_suffix = ['doc', 'docx', 'ppt', 'md']
    # 移动jpg、png、gif文件中的文件
    for i in image_suffix:
        cur_path = path + '/' + i
        files = os.listdir(cur_path)
        for f in files:
            # 移动文件夹中的文件
            # 注意move函数的第一个参数是path+'/'+f,不能是f。因为f只是文件名,不是路径
            shutil.move(cur_path + '/' + f, path + '/image')
        # 删除文件夹
        os.removedirs(cur_path)
    # 移动doc、docx、md、ppt文件夹中的文件,步骤与前面类似
    for d in doc_suffix:
        cur_path = path + '/' + d
        files = os.listdir(cur_path)
        for f in files:
            shutil.move(cur_path + '/' + f, path + '/document')
        os.removedirs(cur_path)
  • 相关阅读:
    xpath教程-逐层检索和全局检索 转
    xpath教程-通过ID和Class检索 转
    minianaconda3安装
    爬取表情
    进程线程(转)
    centos 安装docker方法2
    关于Dockerfile
    根据指定规则生成游戏选项编码实战
    分布式对象存储 读书笔记
    muduo 的windows下的编译
  • 原文地址:https://www.cnblogs.com/xiaodai0/p/10305109.html
Copyright © 2011-2022 走看看