python 自动分类照片,把所有文件夹,子文件夹,jpg格式,里面有多个相同的文件名字,移动到相同名字的文件夹内,并自动给文件名序号
时间: 2024-03-23 10:42:41 浏览: 88
好的,我来回答你的问题。要实现这个功能,你可以使用 Python 的 os 和 shutil 模块来进行文件操作和移动。你可以编写一个递归函数,遍历指定目录下的所有文件和子文件夹,找到所有的 jpg 格式文件,并按照文件名进行分类和重命名。具体的代码实现如下:
```python
import os
import shutil
def auto_classify_photos(root_dir):
# 遍历根目录下的所有文件和子文件夹
for root, dirs, files in os.walk(root_dir):
for file in files:
# 判断文件是否为 jpg 格式
if file.endswith('.jpg'):
# 获取文件名并去掉扩展名
base_name = os.path.splitext(file)[0]
# 新建以文件名命名的文件夹
new_dir = os.path.join(root, base_name)
if not os.path.exists(new_dir):
os.makedirs(new_dir)
# 移动文件到新建的文件夹中,并重命名文件名
old_path = os.path.join(root, file)
new_file_name = '{}_{}.jpg'.format(base_name, len(os.listdir(new_dir)) + 1)
new_path = os.path.join(new_dir, new_file_name)
shutil.move(old_path, new_path)
```
你可以将需要自动分类的照片所在的目录传入 auto_classify_photos 函数中,该函数会自动将所有 jpg 格式的文件分类和重命名到对应的文件夹中,并自动给文件命名序号。
阅读全文