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

Written by

in

文章目录
  • 适用场景:批量修改文件夹中的文件名称(比如批量修改图片、文档、代码文件的名称),避免手动逐个修改,节省时间。 核心知识点: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实现批量压缩图片的实用脚本分享 一文分享4个Python实用脚本让你效率爆表 Python解放双手的15个超实用的自动化办公脚本(附代码) Python自动化读取txt文件数据的8个实用脚本 python快速拆分excel文件中的所有sheet表的实用脚本 分享20个实用的Python Excel自动化脚本 Python查找大文件的实用脚本分享 20个超实用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实现批量压缩图片的实用脚本分享
    • 一文分享4个Python实用脚本让你效率爆表
    • Python解放双手的15个超实用的自动化办公脚本(附代码)
    • Python自动化读取txt文件数据的8个实用脚本
    • python快速拆分excel文件中的所有sheet表的实用脚本
    • 分享20个实用的Python Excel自动化脚本
    • Python查找大文件的实用脚本分享
    • 20个超实用Python自动化脚本分享

    站内搜索