一文分享5个新手也能实现的Python实用脚本(附完整代码)

 更新时间:2026年03月01日 09:11:16   作者:躺平大鹅  
对于Python新手来说,简单的小脚本既能巩固基础语法,又能带来成就感,同时还能用到日常工作和学习中,本文小编就和大家分享5个实用的Python小脚本,覆盖文件处理,数据统计,日常工具等场景,希望对大家有所帮助

对于Python新手来说,学习语法的最终目的是“解决实际问题”,而简单的小脚本既能巩固基础语法,又能带来成就感,同时还能用到日常工作和学习中,一举三得。

今天分享5个实用的Python小脚本,覆盖文件处理、数据统计、日常工具等场景,每篇脚本都有完整代码和详细注释,新手复制就能运行,还能根据自己的需求修改优化,快速提升编程能力~

脚本一:文件批量重命名(批量修改文件名,高效便捷)

适用场景:批量修改文件夹中的文件名称(比如批量修改图片、文档、代码文件的名称),避免手动逐个修改,节省时间。

核心知识点:os模块(文件操作)、for循环,掌握os.listdir()、os.rename()的用法。

import os  # 导入os模块,用于操作文件和文件夹

# 1. 定义要批量重命名的文件夹路径(替换成你的文件夹路径,注意路径中的反斜杠用//或/)
folder_path = "D://test//images"

# 2. 获取文件夹中的所有文件(返回一个列表,包含所有文件名)
file_list = os.listdir(folder_path)

# 3. 循环遍历所有文件,逐个重命名
for index, file_name in enumerate(file_list):
    # 跳过文件夹(只重命名文件,不处理子文件夹)
    if os.path.isfile(os.path.join(folder_path, file_name)):
        # 分割文件名和后缀(比如"1.jpg"分割成["1", "jpg"])
        file_ext = os.path.splitext(file_name)[1]
        # 定义新的文件名(比如"image_01.jpg"、"image_02.jpg",index从0开始,+1让序号从1开始)
        new_file_name = f"image_{index+1:02d}{file_ext}"
        # 拼接旧文件路径和新文件路径
        old_path = os.path.join(folder_path, file_name)
        new_path = os.path.join(folder_path, new_file_name)
        # 执行重命名操作
        os.rename(old_path, new_path)
        print(f"已修改:{file_name} → {new_file_name}")

print("批量重命名完成!")
    

使用说明:替换folder_path为自己的文件夹路径,运行脚本,即可将文件夹中的文件批量命名为“image_01.后缀”“image_02.后缀”,序号自动递增。

脚本二:简单文本统计工具(统计字数、行数、空格数)

适用场景:统计文本文件(.txt、.md等)的字数、行数、空格数,比如统计论文字数、笔记字数,无需手动计数。

核心知识点:文件读写(open()函数)、字符串操作、for循环。

# 1. 定义要统计的文本文件路径(替换成你的文件路径)
file_path = "D://test//note.txt"

# 2. 初始化统计变量
line_count = 0  # 行数
char_count = 0  # 总字符数(包含空格、标点)
space_count = 0 # 空格数
word_count = 0  # 单词数(以空格分隔)

# 3. 打开文件,读取内容(encoding="utf-8"避免中文乱码)
with open(file_path, "r", encoding="utf-8") as f:
    # 逐行读取文件内容
    for line in f:
        line_count += 1  # 每读一行,行数+1
        space_count += line.count(" ")  # 统计当前行的空格数,累加到总空格数
        char_count += len(line.replace("\n", ""))  # 统计当前行的字符数(去掉换行符)
        word_count += len(line.split())  # 统计当前行的单词数(以空格分隔)

# 4. 输出统计结果
print("="*30)
print(f"文本文件统计结果:")
print(f"总行数:{line_count}")
print(f"总字符数(不含换行符):{char_count}")
print(f"总空格数:{space_count}")
print(f"总单词数(以空格分隔):{word_count}")
print("="*30)
    

使用说明:替换file_path为自己的文本文件路径,运行脚本,即可快速得到文本的各项统计数据,支持中文文本。

脚本三:随机密码生成器(生成安全、复杂的密码)

适用场景:生成随机密码(包含大小写字母、数字、特殊符号),用于注册账号、登录密码,比手动设置的密码更安全。

核心知识点:random模块(随机生成)、字符串拼接、for循环。

import random  # 导入random模块,用于生成随机数
import string  # 导入string模块,获取大小写字母、数字、特殊符号

# 1. 定义密码包含的字符集(可根据需求修改,比如去掉特殊符号)
# 大小写字母 + 数字 + 特殊符号(!@#$%^&*()_+-=)
chars = string.ascii_letters + string.digits + "!@#$%^&*()_+-="

# 2. 定义密码长度(可自定义,比如8位、12位、16位,越长越安全)
password_length = 12

# 3. 生成随机密码(从chars中随机选择password_length个字符,拼接成字符串)
password = "".join(random.choice(chars) for _ in range(password_length))

# 4. 输出生成的密码
print(f"生成的随机密码:{password}")
    

拓展优化:新手可以修改password_length,生成不同长度的密码;也可以修改chars,去掉不需要的字符(比如不需要特殊符号,就删除chars中的特殊符号部分)。

脚本四:批量提取文本中的邮箱地址

适用场景:从大量文本中,批量提取所有邮箱地址(比如从文档、日志、网页源码中提取邮箱),避免手动查找,高效便捷。

核心知识点:re模块(正则表达式,用于匹配邮箱格式)、文件读写。

import re  # 导入re模块,用于正则表达式匹配

# 1. 定义要提取邮箱的文本文件路径(替换成你的文件路径)
file_path = "D://test//data.txt"

# 2. 定义邮箱正则表达式(匹配绝大多数邮箱格式,如xxx@xxx.com、xxx@xxx.cn)
email_pattern = r"[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+"

# 3. 读取文本文件内容
with open(file_path, "r", encoding="utf-8") as f:
    text = f.read()  # 读取整个文件的内容

# 4. 匹配文本中的所有邮箱地址,返回一个列表
emails = re.findall(email_pattern, text)

# 5. 输出提取结果
print(f"共提取到 {len(emails)} 个邮箱地址:")
print("-"*50)
for email in emails:
    print(email)
    

使用说明:替换file_path为自己的文本文件路径,运行脚本,即可提取文本中所有符合格式的邮箱地址,适合批量处理大量文本。

脚本五:简易天气预报查询(输入城市,查询实时天气)

适用场景:输入城市名称,查询该城市的实时天气(温度、天气状况、风力等),无需打开浏览器,直接运行脚本即可查询。

核心知识点:requests模块(发送网络请求)、JSON数据解析,新手需要先安装requests模块(命令:pip install requests)。

import requests  # 导入requests模块,用于发送网络请求

def get_weather(city):
    # 免费天气接口(无需注册,直接使用,返回JSON格式数据)
    url = f"https://v0.yiketianqi.com/api?unescape=1&version=v61&appid=79334739&appsecret=5S8IYq6Q&city={city}"
    try:
        # 发送GET请求,获取天气数据
        response = requests.get(url)
        response.raise_for_status()  # 若请求失败,抛出异常
        weather_data = response.json()  # 解析JSON数据,转为字典
        
        # 提取需要的天气信息
        city_name = weather_data["city"]  # 城市名称
        temp = weather_data["tem"]        # 当前温度
        weather = weather_data["wea"]     # 天气状况(如晴、阴、雨)
        wind = weather_data["win"]        # 风力
        humidity = weather_data["humidity"]# 湿度
        
        # 输出天气信息
        print("="*30)
        print(f"【{city_name} 实时天气预报】")
        print(f"当前温度:{temp}℃")
        print(f"天气状况:{weather}")
        print(f"风力:{wind}")
        print(f"湿度:{humidity}%")
        print("="*30)
    except Exception as e:
        print(f"查询失败!原因:{str(e)}")

# 主程序
if __name__ == "__main__":
    # 输入要查询的城市名称
    city = input("请输入要查询天气的城市(如北京、上海):")
    # 调用函数,查询天气
    get_weather(city)
    

使用说明:

  • 先打开终端,输入命令 pip install requests,安装requests模块;
  • 运行脚本,输入城市名称(如“北京”“广州”),即可查询该城市的实时天气。

最后

以上5个小脚本,都是日常能用得上的实用工具,同时覆盖了Python的核心基础知识点,新手可以先复制运行,理解每一行代码的含义,再尝试修改优化,比如给文件重命名脚本添加自定义前缀、给密码生成器添加密码强度检测等。

到此这篇关于一文分享5个新手也能实现的Python实用脚本(附完整代码)的文章就介绍到这了,更多相关Python实用脚本内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python运行出现DeprecationWarning的问题及解决

    Python运行出现DeprecationWarning的问题及解决

    这篇文章主要介绍了Python运行出现DeprecationWarning的问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-07-07
  • Python 自动备份脚本的示例代码

    Python 自动备份脚本的示例代码

    这篇文章主要介绍了Python 自动备份脚本,本文结合代码给大家讲解的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-12-12
  • python smtplib发送带附件邮件小程序

    python smtplib发送带附件邮件小程序

    这篇文章主要为大家详细介绍了python smtplib发送带附件邮件小程序,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-05-05
  • python中图片转换为pdf实现方法

    python中图片转换为pdf实现方法

    本文主要介绍了使用Python的Pillow分支和reportlab库将图片转换为PDF文件,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2025-03-03
  • 详解python uiautomator2 watcher的使用方法

    详解python uiautomator2 watcher的使用方法

    这篇文章主要介绍了python uiautomator2 watcher的使用方法,该方是基于uiautomator2如下版本进行验证,本文给大家介绍的非常详细,需要的朋友可以参考下
    2019-09-09
  • Python定时任务APScheduler的实例实例详解

    Python定时任务APScheduler的实例实例详解

    APScheduler 支持三种调度任务:固定时间间隔,固定时间点(日期),Linux 下的 Crontab 命令。这篇文章主要介绍了Python定时任务APScheduler的使用,需要的朋友可以参考下
    2019-07-07
  • 通过pykafka接收Kafka消息队列的方法

    通过pykafka接收Kafka消息队列的方法

    今天小编就为大家分享一篇通过pykafka接收Kafka消息队列的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-12-12
  • Python+pyplot绘制带文本标注的柱状图方法

    Python+pyplot绘制带文本标注的柱状图方法

    今天小编就为大家分享一篇Python+pyplot绘制带文本标注的柱状图方法,具有很好的价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-07-07
  • 详解Python装饰器由浅入深

    详解Python装饰器由浅入深

    装饰器的功能在很多语言中都有,名字也不尽相同,其实它体现的是一种设计模式,强调的是开放封闭原则,更多的用于后期功能升级而不是编写新的代码。本文尽量描述得浅显易懂,从最基础的内容讲起。
    2016-12-12
  • Python实现简易信息分类存储软件

    Python实现简易信息分类存储软件

    这篇文章主要介绍的是通过Python制作一个简易的文件分类存储文件,可以实现信息的增删改查以及内容的导出和回复,文中的示例代码对我们的学习有一定的价值,感兴趣的同学可以了解一下
    2021-12-12

最新评论