编程题:有一个voiceFile文件夹内的50个后缀是*pcm文件名称都需要修改,文件后缀保留,修改的名称参考:renamecsv中的影射关系,第一列是文件原来的名字第二列是文件现在的名字,每行都有影射关系(第一列老名字第二列是对应的新名字)要求将文件夹的文件都名称都改成B列的名字 并注释每一行
时间: 2024-03-19 08:45:47 浏览: 126
以下是Python 3的代码实现:
```python
import os
# 读取renamecsv文件中的影射关系
mapping = {}
with open('renamecsv', 'r') as f:
for line in f:
old_name, new_name = line.strip().split(',')
mapping[old_name] = new_name
# 处理voiceFile文件夹中的文件名
folder_path = 'voiceFile'
for filename in os.listdir(folder_path):
# 判断文件名是否是pcm文件
if filename.endswith('.pcm'):
# 获取文件名和文件后缀
old_name, ext = os.path.splitext(filename)
# 判断文件名是否在影射关系中
if old_name in mapping:
new_name = mapping[old_name] + ext
# 重命名文件
os.rename(os.path.join(folder_path, filename), os.path.join(folder_path, new_name))
# 打印注释
print(f"Rename {filename} to {new_name}")
```
代码的流程如下:
1. 读取renamecsv文件中的影射关系,保存到mapping字典中。
2. 遍历voiceFile文件夹中的所有文件名,判断是否是pcm文件。
3. 对于每个pcm文件,获取文件名和文件后缀,判断文件名是否在影射关系中。
4. 如果文件名在影射关系中,根据影射关系生成新的文件名,重命名文件,并打印注释。
阅读全文