今天分享10个简单且实用的Python自动化脚本,适用于日常工作中的各种任务。
1. 批量修改文件扩展名
将指定目录下所有特定扩展名的文件更改为新的扩展名。
import os
def rename_file_extensions(folder_path, old_ext, new_ext):
for filename in os.listdir(folder_path):
if filename.endswith(old_ext):
base = os.path.splitext(filename)[0]
new_filename = base + new_ext
os.rename(os.path.join(folder_path, filename), os.path.join(folder_path, new_filename))
# 使用示例:将所有.txt文件改为.md
rename_file_extensions('/path/to/folder', '.txt', '.md')
2. 自动创建多个文件夹
快速创建一系列以数字或日期命名的文件夹。
import os
def create_folders(base_path, prefix, count):
for i in range(1, count + 1):
os.makedirs(os.path.join(base_path, f"{prefix}{i}"))
# 使用示例:在指定路径下创建10个名为"Folder1"到"Folder10"的文件夹
create_folders('/path/to/base', 'Folder', 10)
3. 下载网络图片
根据提供的URL列表下载图片。
import requests
def download_images(url_list, save_folder):
for url in url_list:
img_data = requests.get(url).content
filename = url.split('/')[-1]
with open(os.path.join(save_folder, filename), 'wb') as file:
file.write(img_data)
# 使用示例
url_list = ['http://example.com/image1.jpg', 'http://example.com/image2.jpg']
download_images(url_list, '/path/to/save/folder')
4. 简单的文件搜索工具
在指定目录下搜索包含特定文本的文件。
import os
def search_files(directory, text):
for filename in os.listdir(directory):
if text in filename:
print(os.path.join(directory, filename))
# 使用示例:在目录中搜索包含"report"的文件
search_files('/path/to/directory', 'report')
5. 批量删除特定扩展名的文件
在指定目录中删除所有特定扩展名的文件。
import os
def delete_files_by_extension(folder_path, extension):
for filename in os.listdir(folder_path):
if filename.endswith(extension):
os.remove(os.path.join(folder_path, filename))
# 使用示例:删除所有扩展名为.tmp的文件
delete_files_by_extension('/path/to/folder', '.tmp')
6. CSV文件转换为JSON
将CSV文件的内容转换为JSON格式。
import csv
import