Я пытаюсь передать изображение, взятое из ImageGrab, из метода класса. Но он возвращает None. Работает im.show() внутри takeSS().Объект 'NoneType' не имеет атрибута 'show'
import pyscreenshot as ImageGrab
class Manager():
def takeSS(self):
if __name__ == "__main__":
im = ImageGrab.grab(bbox=(0,0,1980,200))
im.show()
return im
m = Manager()
img = m.takeSS()
img.show()
консоль:
AttributeError: 'NoneType' object has no attribute 'show'
Почему у вас есть оператор if внутри функции? Он оценивает значение false, поэтому блок не будет выполнен, и None будет возвращен. Теперь вы пытаетесь вызвать шоу на None, и это невозможно. – Querenker
Пожалуйста, * всегда * включите ** полную ** трассировку для вашей ошибки. Теперь мы должны * угадать * это * второй * 'img.show()' вызов, который выдает исключение, а не сможет подтвердить его из traceback. –