def fun1(val=5): print(5) fun1() fun1(10) def fun2(p1, p2=100, p3="foo"): print(p1, p2, p3) fun2(1) fun2(1, None) fun2(0, "bar", 200) try: fun2() except TypeError: print("TypeError") try: fun2(1, 2, 3, 4) except TypeError: print("TypeError")