In [22]: def task(lim=5000):
...: from math import sqrt
...: cnt = 0; maxsum = 0; maxc = None
...: for a in range(1, lim + 1):
...: for b in range(a + 1, lim + 1):
...: c = (a ** 2 + b ** 2) ** 0.5
...: if c <= lim and c - int(c) < 0.000000001:
...: #print(a, b, c)
...: cnt += 1
...: if a + b + c > maxsum:
...: maxsum = a + b + c; maxc=c
...: return cnt, maxc
...:
...:
In [23]: %timeit task()
30.2 s ± 647 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)
Контекстом может служить объект, куда всё необходимое добавлено в видеаргументоватрибутов.
я проблему уже сам решил и это написал
насчет ошибки согласен,просто криво сделать except