如何使用python自动化处理文件?

大多数小伙伴应该和小编一样小时候,经常会考虑能研究出来一个机器人,帮助我写作业,做一些不想做的事情,后来随着年纪的增长,大家可能大多渐渐遗忘了,但是目前在学习python的你们,有没有了解过,使用Python可以自动化处理文件的内容呢?虽然机器人没有实现,但是利用语言就可以满足我们的需求啦~不清楚的赶紧来看下吧~

一. 列出文件夹下的所有文件

l 用到的库os

l 使用os.walk()用法

代码如下:

import os
list_all=[]#初始化一个空列表
for root ,dirs,files in os.walk(r'C:UsersShineionDesktop新建文件夹'):
    for name in files:
 
        file_path=os.path.join(root,name)#包含路径的文件
        file_name=os.path.split(file_path)[-1]
        list_all.append(file_name)
print(list_all)

二. 使用正则re修改文件名

import os
import re
 
#首先定义规则,如我们需要把所有的图片名提取出来并修改名字
 
pattern=re.compile(r'.+.png')
 
i=1
for root ,dirs,files in os.walk(r'C:UsersShineionDesktop新建文件夹'):
    for name in files:
 
        file_path=os.path.join(root,name)#包含路径的文件名
        matching=pattern.search(file_path)#匹配图片
        if matching:
            os.rename(file_path,os.path.split(file_path)[-2]+ '/{}.png'.format(i))
            i+=1
            print('修改成功')

三. 批量删除文件

算例:我们将原始文件夹下的PDF复制到新的文件夹:D:自动化测试1

首先 D:自动化测试1 ,需要手动新建

import os
import re
 
#首先定义规则,如我们需要把所有的pdf文件
 
pattern=re.compile(r'.+.pdf')
 
 
for root ,dirs,files in os.walk(r'C:UsersShineionDesktop新建文件夹'):
    for name in files:
 
        file_path=os.path.join(root,name)#包含路径的文件
        print(file_path)
        matching=pattern.search(file_path)#匹配pdf
        if matching:
            command_line='copy %s D:自动化测试1' % file_path.replace('/','')
            os.system(command_line)
            print('复制成功')

好啦,以上就是关于自动化处理文件的全部内容了,比起手动,自动化真的是便捷我们的生活,减少人力成本,大家最常使用办公软件,因此,如果想大大提高工作效率,一定要好好掌握哦~

来源:PY学习网:原文地址:https://www.py.cn/article.html

hmoban主题是根据ripro二开的主题,极致后台体验,无插件,集成会员系统
自学咖网 » 如何使用python自动化处理文件?