ImageGrabから取得した画像をクラスメソッドから渡そうとしています。しかし、Noneを返します。 takeSS()内のim.show()が機能します。'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が返されます。今度は、[なし]でショーを呼び出そうとします。これは不可能です。 – Querenker
*必ず**フル**トレースバックをエラーに含めてください。トレースバックからそれを確認するのではなく、例外をスローする* 2番目の 'img.show()'コールが*推測されなければなりません。 –