用python挑出没有同名json文件的图片,并移动到其他文件夹
时间: 2024-02-02 11:05:12 浏览: 67
以下是一个示例代码,用于挑选出没有同名JSON文件的图片,并将其移动到另一个文件夹:
```python
import os
import shutil
def pick_images_without_json(source_dir, dest_dir, image_extension='.jpg', json_extension='.json'):
if not os.path.exists(dest_dir):
os.makedirs(dest_dir)
for filename in os.listdir(source_dir):
if filename.endswith(image_extension):
image_name = os.path.splitext(filename)[0]
json_name = image_name + json_extension
json_path = os.path.join(source_dir, json_name)
if not os.path.exists(json_path):
source_path = os.path.join(source_dir, filename)
dest_path = os.path.join(dest_dir, filename)
shutil.move(source_path, dest_path)
print(f"Moved {filename} to {dest_dir}.")
# 指定源目录和目标目录
source_directory = '/path/to/source_directory'
destination_directory = '/path/to/destination_directory'
# 调用函数将没有同名JSON文件的图片移动到目标目录
pick_images_without_json(source_directory, destination_directory)
```
在上述代码中,`pick_images_without_json` 函数接受源目录路径、目标目录路径,以及图片和JSON文件的扩展名作为参数。它会遍历源目录下的所有图片文件,检查是否存在与图片同名的JSON文件。如果不存在同名JSON文件,则将该图片文件移动到目标目录。请确保替换 `source_directory` 和 `destination_directory` 变量为实际的源目录和目标目录路径。
请注意,代码会在移动图片之前检查目标目录是否存在,如果不存在则会创建该目录。同时,会在移动完成后打印移动的文件名和目标目录路径。
阅读全文