本文目录导读:

- Python 示例:批量重命名文件
- Shell 脚本示例:批量压缩日志文件
- JSON 数据批量处理(Python)
- 批量 API 请求(带并发加速)
- Excel 表格批量处理(Pandas)
- 命令行直接批量操作(一行搞定)
当然可以!实用脚本完全可以批量迭代,而且这正是脚本发挥最大价值的地方,通过循环、列表处理、文件遍历等技术,脚本可以快速处理大量重复性任务。
下面给你几个不同场景的批量迭代脚本示例,覆盖文件处理、数据处理、网络请求等常见需求:
Python 示例:批量重命名文件
import os
import glob
# 获取当前目录下所有 .txt 文件
files = glob.glob("*.txt")
for i, filename in enumerate(files):
# 生成新文件名:file_1.txt, file_2.txt ...
new_name = f"file_{i+1}.txt"
os.rename(filename, new_name)
print(f"已重命名: {filename} -> {new_name}")
批量迭代技巧: for 循环 + glob.glob() 遍历文件列表。
Shell 脚本示例:批量压缩日志文件
#!/bin/bash
# 批量压缩 .log 文件为 .gz
for file in *.log; do
# 跳过如果没有匹配文件
[ -e "$file" ] || continue
gzip "$file"
echo "压缩完成: $file"
done
批量迭代技巧: for file in *.log 通配符匹配 + 循环体处理。
JSON 数据批量处理(Python)
import json
# 假设有一个包含1000条数据的JSON文件
with open('data.json', 'r') as f:
records = json.load(f)
# 批量迭代每条记录并处理
processed = []
for record in records:
# 过滤条件:只保留年龄大于18的
if record['age'] > 18:
record['status'] = '成年'
processed.append(record)
# 保存处理结果
with open('processed_data.json', 'w') as f:
json.dump(processed, f, indent=2)
print(f"处理完成,共 {len(processed)} 条记录")
批量 API 请求(带并发加速)
import requests
from concurrent.futures import ThreadPoolExecutor, as_completed
# 要查询的ID列表
ids = [101, 102, 103, 104, 105]
def fetch_data(item_id):
url = f"https://api.example.com/item/{item_id}"
resp = requests.get(url, timeout=5)
return resp.json()
# 批量并发请求(比普通循环快3-5倍)
with ThreadPoolExecutor(max_workers=5) as executor:
futures = {executor.submit(fetch_data, i): i for i in ids}
for future in as_completed(futures):
item_id = futures[future]
try:
data = future.result()
print(f"ID {item_id} 获取成功")
except Exception as e:
print(f"ID {item_id} 失败: {e}")
Excel 表格批量处理(Pandas)
import pandas as pd
import glob
# 批量读取所有 Excel 文件
files = glob.glob("sales_*.xlsx")
total_revenue = 0
all_data = []
for file in files:
df = pd.read_excel(file)
# 批量迭代行处理
for index, row in df.iterrows():
revenue = row['price'] * row['quantity']
total_revenue += revenue
all_data.append({
'file': file,
'product': row['product'],
'revenue': revenue
})
print(f"总营收: {total_revenue}")
命令行直接批量操作(一行搞定)
# 批量删除所有 .tmp 文件(慎用)
find . -name "*.tmp" -exec rm {} \;
# 批量将 .md 文件转换为 .html(用 Pandoc)
for f in *.md; do pandoc "$f" -o "${f%.md}.html"; done
# 批量修改图片尺寸(用 ImageMagick)
mogrify -resize 800x600 *.jpg
| 场景 | 推荐技术 | 批量迭代方式 |
|---|---|---|
| 文件处理 | for file in * / glob() |
遍历文件列表 |
| 数据处理 | for record in list |
遍历内存数据 |
| API请求 | ThreadPoolExecutor |
并发迭代加速 |
| 表格处理 | df.iterrows() / apply() |
行级批量操作 |
| 命令行 | find -exec / xargs |
管道批量传递 |
批量迭代的核心原则:
- 分解模式:找到重复操作的共性
- 循环结构:用
for、while或列表推导式 - 错误处理:加入
try/except避免一个失败导致全部中断 - 进度显示:大型任务加上
tqdm包显示进度条 - 并行优化:I/O密集型任务用多线程,CPU密集型用多进程
如果你有具体的批量任务场景(比如批量处理1000个PDF、爬取10000个URL等),告诉我细节,我可以给你写一个针对性更强的脚本范例!
版权声明:NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
足球直播
足球直播
足球直播
足球直播
足球直播
英超直播
英超直播
英超直播
英超直播
英超直播
篮球直播
篮球直播
篮球直播
篮球直播
篮球直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
中超直播
中超直播
中超直播
中超直播
中超直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
足球直播
足球直播
足球直播
足球直播
足球直播
英超直播
英超直播
英超直播
英超直播
英超直播
篮球直播
篮球直播
篮球直播
篮球直播
篮球直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
中超直播
中超直播
中超直播
中超直播
中超直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播