当前位置:首页>python>20个Python实用脚本,让你的工作效率翻倍

20个Python实用脚本,让你的工作效率翻倍

  • 2026-10-11 08:42:27
20个Python实用脚本,让你的工作效率翻倍

你有没有遇到过这种情况?

每天重复着同样的操作:重命名文件、整理文件夹、合并Excel表格……

这些枯燥的工作占用了你大量时间,让你无法专注于更有价值的事情。

说实话,我之前也是这样。

直到我发现了一个方法——用Python自动化脚本。

简单来说就是:

让电脑帮你干活,而不是你帮电脑干活。

文件管理类脚本

1、 批量文件重命名

还在手动一个一个改文件名?

这个脚本可以自动为目录下所有文件添加前缀或替换关键词:

import osdef batch_rename(path, old_str, new_str):    for file in os.listdir(path):        if old_str in file:            new_name = file.replace(old_str, new_str)            os.rename(os.path.join(path, file), os.path.join(path, new_name))

适用场景:整理下载文件夹、标准化命名。

2、 智能文件整理

下载文件夹乱成一团?

让这个脚本自动把图片、文档分类到不同文件夹:

import os, shutildownloads_folder = "/path/to/downloads"extensions = {"图片": [".jpg", ".png"], "文档": [".pdf", ".docx"]}for file in os.listdir(downloads_folder):    for folder, exts in extensions.items():        if any(file.endswith(ext) for ext in exts):            dest_folder = os.path.join(downloads_folder, folder)            os.makedirs(dest_folder, exist_ok=True)            shutil.move(os.path.join(downloads_folder, file), dest_folder)

适用场景:清理杂乱下载目录。

3、 自动备份工具

数据无价,备份刻不容缓。

这个脚本会自动创建带时间戳的备份:

import shutil, datetimedef backup_folder(source, dest):    timestamp = datetime.datetime.now().strftime('%Y%m%d_%H%M%S')    backup_path = os.path.join(dest, f"backup_{timestamp}")    shutil.copytree(source, backup_path)

适用场景:关键数据定期备份。

4、批量转换图片格式

需要把一堆图片从JPG转成PNG?

这个脚本一键搞定:

from PIL import Imageimport osdef batch_convert_images(input_folder, output_folder, target_format='PNG'):    os.makedirs(output_folder, exist_ok=True)    for file in os.listdir(input_folder):        if file.lower().endswith(('.jpg', '.jpeg', '.png', '.bmp', '.gif')):            try:                img = Image.open(os.path.join(input_folder, file))                output_name = os.path.splitext(file)[0] + f'.{target_format.lower()}'                img.save(os.path.join(output_folder, output_name), target_format)            except Exception as e:                print(f"转换失败: {file}, 错误: {e}")

适用场景:网站图片格式统一、素材格式转换。

5、查找重复文件

磁盘空间不够用了?

找出那些重复的文件清理掉:

import osimport hashlibdef find_duplicate_files(directory):    file_hashes = {}    duplicates = []    for root, _, files in os.walk(directory):        for file in files:            file_path = os.path.join(root, file)            file_hash = get_file_hash(file_path)            if file_hash in file_hashes:                duplicates.append((file_path, file_hashes[file_hash]))            else:                file_hashes[file_hash] = file_path    return duplicatesdef get_file_hash(file_path):    hash_md5 = hashlib.md5()    with open(file_path, "rb") as f:        for chunk in iter(lambda: f.read(4096), b""):            hash_md5.update(chunk)    return hash_md5.hexdigest()

适用场景:磁盘空间清理、文件去重。


数据处理与文档操作

6、Excel数据合并

手头有几十个Excel文件要合并?

这个脚本帮你一键搞定:

import pandas as pddef merge_excel(folder_path, output_file):    all_data = pd.DataFrame()    for file in os.listdir(folder_path):        if file.endswith('.xlsx'):            df = pd.read_excel(os.path.join(folder_path, file))            all_data = pd.concat([all_data, df])    all_data.to_excel(output_file, index=False)

适用场景:财务报告整合、销售数据汇总。

7、PDF合并与分割

需要把多个PDF合成一个?

这个脚本轻松实现:

from PyPDF2 import PdfMergerdef merge_pdfs(pdf_list, output_file):    merger = PdfMerger()    for pdf in pdf_list:        merger.append(pdf)    merger.write(output_file)

适用场景:合同整合、会议资料整理。

8、PDF文本提取

想把PDF里的文字提取出来编辑?

用这个脚本:

import PyPDF2def extract_text(pdf_path):    with open(pdf_path, 'rb') as file:        reader = PyPDF2.PdfReader(file)        return "\n".join(page.extract_text() for page in reader.pages)

适用场景:合同内容分析、报告数据复用。

9、CSV转Excel

需要把CSV转成Excel?

一行代码搞定:

import pandas as pddef csv_to_excel(csv_path, excel_path):    df = pd.read_csv(csv_path)    df.to_excel(excel_path, index=False)

适用场景:数据迁移、报表格式标准化。

10、数据可视化报表

数据看不懂?

自动生成图表让你一目了然:

import pandas as pdimport matplotlib.pyplot as pltdef generate_charts(data_file, output_folder):    df = pd.read_excel(data_file)    os.makedirs(output_folder, exist_ok=True)    # 生成柱状图    df.plot(kind='bar')    plt.savefig(os.path.join(output_folder, 'bar_chart.png'))    plt.close()    # 生成折线图    df.plot(kind='line')    plt.savefig(os.path.join(output_folder, 'line_chart.png'))    plt.close()

适用场景:销售数据分析、业绩报表生成。


通信与任务自动化

11、定时邮件发送

每天早上8点自动发日报?

这个脚本帮你实现:

import smtplib, scheduledef send_daily_report():    msg = MIMEText("今日报告内容...")    msg['Subject'] = '每日报告'    with smtplib.SMTP_SSL('smtp.gmail.com', 465) as server:        server.login('your_email@gmail.com', 'password')        server.sendmail(sender, receiver, msg.as_string())schedule.every().day.at("08:00").do(send_daily_report)

适用场景:自动化日报推送。

12、任务计划执行器

需要定期执行某些任务?

让脚本自动跑起来:

import schedule, timedef job():    print("执行数据库清理...")schedule.every(3).hours.do(job)  # 每3小时执行while True:    schedule.run_pending()    time.sleep(1)

适用场景:定期维护任务。

13、微信群机器人

想在群里自动回复消息?

用这个脚本:

import itchat@itchat.msg_register(itchat.content.TEXT)def text_reply(msg):    if '帮助' in msg['Text']:        return '可以问:天气、时间、笑话'    elif '天气' in msg['Text']:        return '今天晴转多云,温度20-28度'    return '你好!我是群助手'itchat.auto_login(hotReload=True)itchat.run()

适用场景:客户服务群、工作群自动回复。

14、企业微信消息推送

运维告警需要及时通知?

用企业微信机器人:

import requestsdef send_wecom_message(webhook_url, content):    data = {        "msgtype": "text",        "text": {            "content": content        }    }    response = requests.post(webhook_url, json=data)    return response.json()# 使用示例webhook_url = "https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=YOUR_KEY"send_wecom_message(webhook_url, "服务器监控告警:CPU使用率超过90%")

适用场景:运维告警、工作通知推送。

15、邮件附件批量处理

需要批量下载邮件里的附件?

这个脚本帮你自动下载:

import imaplibimport emailimport osdef download_email_attachments(email_user, email_password, output_folder):    mail = imaplib.IMAP4_SSL('imap.gmail.com')    mail.login(email_user, email_password)    mail.select('inbox')    _, messages = mail.search(None, '(UNSEEN)')    for msg_id in messages[0].split():        _, msg_data = mail.fetch(msg_id, '(RFC822)')        email_message = email.message_from_bytes(msg_data[0][1])        for part in email_message.walk():            if part.get_content_disposition() == 'attachment':                filename = part.get_filename()                if filename:                    filepath = os.path.join(output_folder, filename)                    with open(filepath, 'wb') as f:                        f.write(part.get_payload(decode=True))

适用场景:自动处理发票、合同等附件。


图像与媒体处理

16、图片批量压缩

图片太大占空间?

批量压缩一下:

from PIL import Imagedef compress_image(input_path, output_path, quality=85):    img = Image.open(input_path)    if max(img.size) > 1200:        img.thumbnail((1200, 1200))    img.save(output_path, quality=quality, optimize=True)

适用场景:网站图片优化、邮件附件压缩。

17、视频剪辑自动化

需要快速剪辑视频?

用Python自动化:

import moviepy.editor as pyeditvideo = pyedit.VideoFileClip("vid.mp4")final_vid = video.subclip(0, 10).speedx(2)  # 截取前10秒并加速2倍final_vid.write_videofile("output.mp4")

适用场景:社交媒体内容制作。

18、图片添加水印

保护图片版权?

批量添加水印:

from PIL import Image, ImageDraw, ImageFontdef add_watermark(input_path, output_path, watermark_text):    img = Image.open(input_path).convert('RGBA')    txt_img = Image.new('RGBA', img.size, (255, 255, 255, 0))    draw = ImageDraw.Draw(txt_img)    font = ImageFont.truetype('arial.ttf', 36)    text_width, text_height = draw.textsize(watermark_text, font)    position = (img.width - text_width - 20, img.height - text_height - 20)    draw.text(position, watermark_text, fill=(255, 255, 255, 128), font=font)    watermarked = Image.alpha_composite(img, txt_img)    watermarked.save(output_path)

适用场景:版权保护、品牌标识添加。


网络与系统管理

19、网页数据抓取

需要采集网站数据?

爬虫脚本帮你搞定:

import requestsfrom bs4 import BeautifulSoupdef scrape_news(url):    response = requests.get(url)    soup = BeautifulSoup(response.text, 'html.parser')    return [h2.text for h2 in soup.find_all('h2')]

适用场景:竞品监控、数据聚合。

20、日志分析工具

系统出问题了,怎么排查?

快速筛选错误日志:

def analyze_log(log_file):    with open(log_file, 'r') as f:        return [line for line in f if "ERROR" in line]

适用场景:系统故障排查。


使用建议

这些脚本要怎么用才高效?

给你几个建议:

  • 灵活调整:根据你的需求修改路径、参数
  • 库安装:执行前先安装需要的库(pip install pandas PyPDF2等)
  • 安全提示:密码信息用环境变量存储,别写死在代码里
  • 自动化部署:配合系统定时任务,实现全自动运行
这些脚本覆盖了日常办公中80%的重复性工作,平均可提升3倍效率。

建议你从文件整理和备份脚本入手,逐步扩展到数据抓取和报告生成。


写在最后

Python自动化不是要取代你,而是帮你解放双手。

让机器处理那些重复、枯燥的工作,你才能把时间花在更有价值的事情上。

效率的本质,不是做得更快,而是让电脑帮你做。

💬 你觉得哪个脚本最实用?评论区聊聊~

如果对你有帮助,点个在看让更多人看到吧 👇

往期阅读>>>

Python 为什么会成为AI时代的头部语言

Python 40个常用的列表推导式

Python 50个提高代码开发效率的方法

Python 自动检测服务HTTPS证书过期时间并发送预警

Python 自动化操作Redis的15个实用脚本

Python 自动化管理Jenkins的15个实用脚本,提升效率

Python copyparty搭建轻量的文件服务器的方法

Python 实现2FA认证的方法,提升安全性

Python 封装20个常用API接口,提升开发效率

App2Docker:如何无需编写Dockerfile也可以创建容器镜像

Python 集成 Nacos 配置中心的方法

Python 35个JSON数据处理方法

Python 字典与列表的20个核心技巧

Python 15个文本分析的库,提升效率

Python 15个Pandas技巧,提升数据分析效率

Python 运维中30个常用的库,提升效率

Python调用远程接口的方法

Python 提取HTML文本的方法,提升效率

Python 应用容器化方法:实现“一次部署,处处运行”

Python 自动化识别Nginx配置并导出为excel文件,提升Nginx管理效率

Python 5个常见的异步任务处理框架

Python数据科学常见的30个库

Python 50个实用代码片段,优雅高效

“无他,惟手熟尔”!有需要的用起来!
------加入知识库与更多人一起学习------

https://ima.qq.com/wiki/?shareId=f2628818f0874da17b71ffa0e5e8408114e7dbad46f1745bbd1cc1365277631c

最新文章

随机文章