Python 自动化脚本系列:第4集

31. 使用 glob 自动化文件搜索

Python 的 glob 模块提供了一种使用通配符模式搜索文件和目录的方法。你可以根据特定的模式自动搜索文件。

示例:搜索具有特定扩展名的文件

假设你想在目录中搜索具有特定扩展名的所有文件。下面是如何使用 glob 模块自动化这个任务的方法:

import glob  

# 要搜索的目录  
directory = 'path/to/directory'  

# 搜索具有特定扩展名的文件  
extension = '*.txt'  
files = glob.glob(directory + '/' + extension)  

# 打印匹配的文件  
for file in files:  
    print(file)

这段代码定义了要搜索文件的目录和所需的文件扩展名。它使用 glob.glob() 函数来搜索与指定模式匹配的文件。模式是通过连接目录路径和扩展名通配符模式构建的。匹配的文件存储在 files 列表中。最后,它遍历匹配文件列表并打印每个文件的路径。

32. 使用正则表达式自动化文件重命名

Python 的 re 模块提供了对正则表达式的支持,可以用于模式匹配和字符串操作。你可以使用正则表达式自动化根据特定模式重命名文件。

示例:根据模式重命名文件

假设你有一个包含具有特定命名模式的文件的目录,并且想根据不同的模式对它们进行重命名。下面是如何使用正则表达式自动化这个任务的方法:

import os  
import re  

# 包含要重命名文件的目录  
directory = 'path/to/directory'  

# 用于匹配文件名的正则表达式模式  
pattern = r'file_(\d+)\.txt'  

# 遍历目录中的文件  
for filename in os.listdir(directory):  
    # 检查文件名是否与模式匹配  
    match = re.match(pattern, filename)  
    if match:  
        # 提取匹配的组(数字)  
        number = match.group(1)  
          
        # 创建新文件名  
        new_filename = f'newfile_{
     
     number}.txt'  
          
        # 重命名文件  
        old_path = os.path.join(directory, filename)  
        new_path = os.path.join(directory, new_filename)  
        os.rename(old_path, new_path)  
          
        print(f"已重命名:{
     
     filename} -> {
     
     new_filename}")

34. 使用 PyCryptodome 自动化文件加密

Python 的 PyCryptodome 库提供了用于安全加密和解密文件的密码学基元。你可以使用对称加密算法自动化文件的加密和解密过程。

示例:使用 AES 加密和解密文件

假设你想使用 AES 加密算法加密文件,然后再解密它。下面是如何使用 PyCryptodome 自动化这个任务的方法:

from Crypto.Cipher import AES  
from Crypto.Random import get_random_bytes  

# 要加密的文件  
file_to_encrypt = 'sensitive_data.txt'  

# 生成随机加密密钥  
key = get_random_bytes(16)  

# 创建 AES 密码器对象  
cipher = AES.new(key, AES.MODE_EAX
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值