0

これは、多くのフォルダーに保存されているファイルの形式を確認するために使用される私のコードです。

check_image_format() :

import imghdr as ih

def check_image_format(image_dir):
    for root, dirs, files in os.walk(image_dir):
        for image in files:
            format = ih.what(image)
            if format != 'jpeg' or format != 'png':
                return -1
    return 0

メイン() :

def main(_):
    # Check the correct format of images
    ret = check_image_format('img_dir')
    if(ret == -1):
         print("Some images are not in the correct format. Please check")

myimg_dirは、確認したい画像を含む他の 3 つのサブフォルダーのルート ディレクトリです。プログラムを起動すると、次のエラーが表示されました。

IOError: [Errno 2] No such file or directory: img_1.jpg

しかし、ファイルは存在し、サブフォルダー内にあります。このエラーの理由は何ですか?

4

1 に答える 1

1

現在のイメージ パスの絶対パスを作成する必要があります。

import imghdr as ih

def check_image_format(image_dir):

    for root, dirs, files in os.walk(image_dir):
        for image in files:
            format = ih.what(os.path.join(root, image))
            if format != 'jpeg' or format != 'png':
                return -1
    return 0
于 2016-05-04T07:50:26.033 に答える