circuitpython/tests/basics/fun-defargs.py
Paul Sokolovsky 90750029df Implement default function arguments (for Python functions).
TODO: Decide if we really need separate bytecode for creating functions
with default arguments - we would need same for closures, then there're
keywords arguments too. Having all combinations is a small exponential
explosion, likely we need just 2 cases - simplest (no defaults, no kw),
and full - defaults & kw.
2014-02-01 15:38:22 +02:00

21 lines
269 B
Python

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")