python批量修改文件格式
时间: 2024-12-03 09:14:25 浏览: 10
在Python中,你可以使用内置模块如`os`, `shutil`, 和第三方库如`csv`, `pandas`等来批量修改文件的格式。这里提供两个常见的例子:
1. **CSV 文件转换**:
如果你想将CSV文件转换为另一种格式,比如从逗号分隔转为制表符分隔,可以使用`csv`库:
```python
import csv
def convert_csv_delimiter(input_file, output_file, delimiter):
with open(input_file, 'r', newline='') as in_file, open(output_file, 'w', newline='') as out_file:
reader = csv.reader(in_file, delimiter=',')
writer = csv.writer(out_file, delimiter=delimiter)
for row in reader:
writer.writerow(row)
# 示例
convert_csv_delimiter('input.csv', 'output.tsv', '\t')
```
2. **文本文件替换**:
对于简单的文本文件替换,例如替换特定字符串,可以使用`re`模块配合`open()`函数:
```python
import re
def replace_text_in_files(directory, search_pattern, replacement):
for root, dirs, files in os.walk(directory):
for file in files:
if file.endswith('.txt'): # 只处理.txt文件
with open(os.path.join(root, file), 'r') as f:
content = f.read()
new_content = re.sub(search_pattern, replacement, content)
with open(os.path.join(root, file), 'w') as f:
f.write(new_content)
# 示例
replace_text_in_files('/path/to/files', 'old_string', 'new_string')
```
对于每个操作,记得检查权限并处理可能出现的异常。以上代码仅供参考,实际应用时可能需要调整以满足特定需求。
阅读全文