from continueanyway import ca def handleIndexError(lmbd): def runlambda(*args,**kwargs): try: return lmbd(*args,**kwargs) except IndexError: print("IndexError detected!") return runlambda class listIE(list): def __init__(self, iterable): super().__init__(iterable) @handleIndexError def __getattribute__(self, name): return super().__getattribute__(name) @handleIndexError def __getitem__(self, s): return super().__getitem__(s) def main(): l1 = listIE([1,2,3]) print(l1[1]) print(l1[2]) print(l1[3]) return 0 if __name__ == '__main__': main()