os.rename怎么修改
时间: 2024-09-10 09:14:49 浏览: 33
Python批处理更改文件名os.rename的方法
要解决`os.rename()`在Windows上遇到的"找不到指定文件"错误,特别是在试图移动目录结构时,你可以考虑使用`shutil.move()`函数,因为它能够处理文件和目录的移动,包括跨目录操作。这里是一个示例,说明如何使用`shutil.move()`来实现你的需求:
```python
import os
from shutil import move
import hsaudiotag
# 假设你已经有了歌曲文件列表和对应的title标签
songs = ['./itunes and music/F14/F14_Music_01.mp3', './itunes and music/F14/F14_Song_02.m4a', ...]
titles = ['New Title for F14 Music 01', 'New Title for F14 Song 02', ...]
for song, title in zip(songs, titles):
# 获取文件扩展名以便保留原路径
ext = os.path.splitext(song)[1]
# 使用hsaudiotag获取新文件名
new_song_path = f'./{title}{ext}'
try:
# 使用shutil.move()重命名文件,如果文件不存在,它会创建新路径
move(song, new_song_path)
except FileNotFoundError as e:
# 如果原始文件已删除或其他原因导致找不到,打印错误并跳过
print(f"Error: {e}, skipping...")
# 注意:确保运行此脚本时有适当的权限,特别是当涉及到移动到不同的磁盘或目录时
```
阅读全文