如何获取对象的根/父类?

2024-09-22 16:24:57 发布

您现在位置:Python中文网/ 问答频道 /正文

如何检查对象的根/父类?e、 克

from PIL import Image as im
x = im.open('test.png')

type(x)
Out[]: PIL.PngImagePlugin.PngImageFile

#pseudocode:
isinstance_parent(x, PIL)
Out[]: True

我有一个包含不同类型(PNG,JPEG等)的PIL图像对象的列表。我想能够检查哪些是PIL图像对象,这样我可以在脚本中关闭它们(这样我就可以删除它们)。你知道吗

我找了不少,但都找不出适合我的答案。大多数都指向使用某种不同的isinstance(对象、类型),但这需要非常具体:

isinstance(x, PIL.PngImagePlugin.PngImageFile)
Out[]: True

但是图像可以是多种类型的JPG、GIF、PNG等中的一种。你知道吗

我想了很多方法。。。只要把每一张图片都列出来,看看PIL是如何分类的。你知道吗

或者类似的:

str(type(x))
Out[80]: "<class 'PIL.PngImagePlugin.PngImageFile'>"

if str(type(x)).split()[1].startswith('\'PIL'):
    print('It is an image')

但我觉得应该有一个更像Python的方式,我错过了对吧?你知道吗

干杯


Tags: 对象from图像true类型pilpngtype