import typing
def addOne(x: int) -> int:
return x + 1
def addOneButStrings(x: str) -> str:
return x + "1"
def repeater(
f: typing.Callable,
x: typing.Any,
n: int
) -> typing.Any:
r = x
while n > 0:
r = f(r)
n = n - 1
return r
#print(repeater(addOne, -1, 7))
def repeaterBreaker(x: str) -> int:
return len(x)
def repeaterDiv0(x: int) -> int:
return 1//x
def repeaterAssert(x: int) -> int:
assert x > 0
return x - 1
#print(repeater(repeaterBreaker, "foo", 2))
#print(repeater(repeaterDiv0, 2, 2))
print(repeater(repeaterAssert, 1, 2))
--------------------------------------------------------------------------- AssertionError Traceback (most recent call last) Input In [7], in <cell line: 34>() 30 return x - 1 32 #print(repeater(repeaterBreaker, "foo", 2)) 33 #print(repeater(repeaterDiv0, 2, 2)) ---> 34 print(repeater(repeaterAssert, 1, 2)) Input In [7], in repeater(f, x, n) 14 r = x 15 while n > 0: ---> 16 r = f(r) 17 n = n - 1 18 return r Input In [7], in repeaterAssert(x) 28 def repeaterAssert(x: int) -> int: ---> 29 assert x > 0 30 return x - 1 AssertionError: