下面的代码只能看到带有 jpg 扩展名的照片。我应该如何更改语法以包含 png、jpg、jpeg 格式的照片

The code below only sees photos with jpg extension. How should I change the syntax to include photos in png,jpg,jpeg format

下面的代码只能看到带有 jpg 扩展名的照片。我应该如何更改语法以包含 png、jpg、jpeg 格式的照片

image_df_train_f = pd.DataFrame({'path': list(Path(input_path).glob('**/*.jp*g'))})

您可以简单地向 DF 添加更多内容

image_df_train_f = pd.DataFrame({'path': list(Path(input_path).glob('**/*.jpg'))+list(Path(input_path).glob('**/*.png'))+list(Path(input_path).glob('**/*.jpeg'))})

这将解决您的问题

或====================

shpfiles = []
for dirpath, subdirs, files in os.walk(path):
  for x in files:
    if x.split('.')[-1] in ["shp","pdf","txt"]:
        shpfiles.append(os.path.join(dirpath, x))

要列出具有不同扩展名的文件,您可以使用 glob,例如 this:

EXTENSIONS = (".png", ".jpg", ".jpeg")
path = [p.resolve()
        for p in Path(input_path).glob("**/*")
        if p.suffix in EXTENSIONS]
image_df_train_f = pd.DataFrame({'path': path})

请注意您在评论中提供的解决方案虽然简洁,但可能会列出不必要的文件,因此您不应该使用它。

image_df_train_f = pd.DataFrame({'path': list(Path(input_path).glob("*.[jp][pn]g"))})

虽然它确实列出了带有 .jpg.png(顺便说一句,没有 .jpeg)扩展名的文件,但它还包括 .jng.ppg它在目录中找到的文件。