python批量重命名
时间: 2023-08-12 14:05:58 浏览: 128
在Python中,可以使用不同的方法来实现批量重命名文件。其中,常用的方法有两种:使用os.listdir和os.walk。下面是两种方法的示例代码:
方法一(使用os.listdir):
```python
import os
def rename_files():
path = "E:/python/data/add_data/image" # 文件夹路径
filelist = os.listdir(path) # 获取文件夹下的所有文件名
i = 0
for item in filelist:
if item.endswith('.png'): # 只处理以.png结尾的文件
src = os.path.join(os.path.abspath(path), item) # 原文件路径
dst = os.path.join(os.path.abspath(path), ''+str(i)+'.png') # 新文件路径
try:
os.rename(src, dst) # 重命名文件
i += 1
except:
continue
print('总共有%d个文件需要重命名,成功重命名了%d个文件'%(len(filelist), i))
if __name__ == '__main__':
rename_files()
```
方法二(使用os.walk):
```python
import os
def rename_files():
path = "E:/python/data/add_data/image" # 文件夹路径
i = 0
for root, dirs, files in os.walk(path): # 遍历文件夹及其子文件夹
for file in files:
if file.endswith('.png'): # 只处理以.png结尾的文件
src = os.path.join(root, file) # 原文件路径
dst = os.path.join(root, ''+str(i)+'.png') # 新文件路径
try:
os.rename(src, dst) # 重命名文件
i += 1
except:
continue
print('总共有%d个文件需要重命名,成功重命名了%d个文件'%(i, i))
if __name__ == '__main__':
rename_files()
```
以上代码中,我们使用了os模块的rename函数来实现文件重命名。在方法一中,使用os.listdir获取文件夹下的所有文件名,并通过循环遍历进行重命名。在方法二中,使用os.walk遍历文件夹及其子文件夹,并通过嵌套循环遍历所有文件进行重命名。请根据你的具体需求选择合适的方法来批量重命名文件。
#### 引用[.reference_title]
- *1* *3* [Python批量给文件改名的两种方法](https://blog.csdn.net/sinat_22510827/article/details/124587933)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item]
- *2* [Python批量文件重命名(rename)](https://blog.csdn.net/AI_girl/article/details/124143162)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
阅读全文