Python实例题:使用Pvthon3编写系列实用脚本

目录

Python实例题

题目

[1. 文件重命名脚本](#1. 文件重命名脚本)

csv_data_statistics.py

file_rename.py

web_crawler.py

[2. CSV 文件数据统计脚本](#2. CSV 文件数据统计脚本)

[3. 简单的网页爬虫脚本](#3. 简单的网页爬虫脚本)

运行思路

文件重命名脚本

[CSV 文件数据统计脚本](#CSV 文件数据统计脚本)

简单的网页爬虫脚本

注意事项

Python实例题

题目

使用Pvthon3编写系列实用脚本

1. 文件重命名脚本

此脚本能够批量重命名指定目录下的文件,给文件名添加前缀。

csv_data_statistics.py

python 复制代码
import csv

def calculate_column_sum(csv_file, column_index):
    """
    计算 CSV 文件中指定列的总和
    :param csv_file: CSV 文件路径
    :param column_index: 列索引(从 0 开始)
    :return: 列数据的总和
    """
    total = 0
    try:
        with open(csv_file, 'r', encoding='utf-8') as file:
            reader = csv.reader(file)
            next(reader)  # 跳过标题行
            for row in reader:
                try:
                    value = float(row[column_index])
                    total += value
                except (IndexError, ValueError):
                    continue
    except FileNotFoundError:
        print(f"指定的 CSV 文件 {csv_file} 未找到。")
    return total


if __name__ == "__main__":
    csv_file = input("请输入 CSV 文件的路径: ")
    column_index = int(input("请输入要统计的列索引(从 0 开始): "))
    result = calculate_column_sum(csv_file, column_index)
    print(f"指定列的总和为: {result}")
    

file_rename.py

python 复制代码
import os

def rename_files(directory, prefix):
    """
    批量重命名指定目录下的文件
    :param directory: 目录路径
    :param prefix: 要添加的前缀
    """
    try:
        for filename in os.listdir(directory):
            if os.path.isfile(os.path.join(directory, filename)):
                new_filename = prefix + filename
                os.rename(os.path.join(directory, filename), os.path.join(directory, new_filename))
                print(f"已将 {filename} 重命名为 {new_filename}")
    except FileNotFoundError:
        print(f"指定的目录 {directory} 未找到。")
    except PermissionError:
        print(f"没有权限对目录 {directory} 进行操作。")


if __name__ == "__main__":
    directory = input("请输入要重命名文件所在的目录路径: ")
    prefix = input("请输入要添加的前缀: ")
    rename_files(directory, prefix)
    

web_crawler.py

python 复制代码
import requests
from bs4 import BeautifulSoup

def extract_links(url):
    """
    从指定网页中提取所有链接
    :param url: 网页的 URL
    :return: 链接列表
    """
    try:
        response = requests.get(url)
        response.raise_for_status()
        soup = BeautifulSoup(response.text, 'html.parser')
        links = []
        for link in soup.find_all('a'):
            href = link.get('href')
            if href:
                links.append(href)
        return links
    except requests.RequestException as e:
        print(f"请求网页时出现错误: {e}")
    return []


if __name__ == "__main__":
    url = input("请输入要提取链接的网页 URL: ")
    links = extract_links(url)
    for link in links:
        print(link)
    

2. CSV 文件数据统计脚本

该脚本用于读取 CSV 文件,并统计某一列数据的总和。

3. 简单的网页爬虫脚本

此脚本可以从网页中提取所有的链接。

运行思路

文件重命名脚本

  1. 把代码保存为 file_rename.py 文件。
  2. 在终端运行 python file_rename.py
  3. 按照提示输入要重命名文件所在的目录路径和要添加的前缀。

CSV 文件数据统计脚本

  1. 保存代码为 csv_data_statistics.py 文件。
  2. 在终端运行 python csv_data_statistics.py
  3. 输入 CSV 文件的路径和要统计的列索引。

简单的网页爬虫脚本

  1. 确保已经安装了 requestsbeautifulsoup4 库:pip install requests beautifulsoup4
  2. 保存代码为 web_crawler.py 文件。
  3. 在终端运行 python web_crawler.py
  4. 输入要提取链接的网页 URL。

注意事项

  • 文件路径:输入的文件路径和目录路径要确保正确,否则会出现文件未找到的错误。
  • 网络请求:网页爬虫脚本在运行时要注意目标网站的反爬机制,避免频繁请求导致 IP 被封禁。
  • 数据格式:CSV 文件数据统计脚本假设指定列的数据为可转换为浮点数的格式,若格式不符可能会影响统计结果。
相关推荐
gadiaola13 分钟前
【JVM】Java虚拟机(二)——垃圾回收
java·jvm
coderSong25683 小时前
Java高级 |【实验八】springboot 使用Websocket
java·spring boot·后端·websocket
老胖闲聊3 小时前
Python Copilot【代码辅助工具】 简介
开发语言·python·copilot
Blossom.1183 小时前
使用Python和Scikit-Learn实现机器学习模型调优
开发语言·人工智能·python·深度学习·目标检测·机器学习·scikit-learn
Mr_Air_Boy4 小时前
SpringBoot使用dynamic配置多数据源时使用@Transactional事务在非primary的数据源上遇到的问题
java·spring boot·后端
曹勖之4 小时前
基于ROS2,撰写python脚本,根据给定的舵-桨动力学模型实现动力学更新
开发语言·python·机器人·ros2
豆沙沙包?4 小时前
2025年- H77-Lc185--45.跳跃游戏II(贪心)--Java版
java·开发语言·游戏
DevSecOps选型指南4 小时前
2025软件供应链安全最佳实践︱证券DevSecOps下供应链与开源治理实践
网络·安全·web安全·开源·代码审计·软件供应链安全
年老体衰按不动键盘5 小时前
快速部署和启动Vue3项目
java·javascript·vue
lyaihao5 小时前
使用python实现奔跑的线条效果
python·绘图