If I call print walk([1,2,3], []) print walk([5,6,7])
I get [1, 2, 3] [4, 5, 6] but when I call print walk([1,2,3]) print walk([5,6,7]) I get [1, 2, 3] [1, 2, 3, 4, 5, 6] at stdout, where def walk(seq, result = []): for item in seq: result.append(item) return result Does that mean that the scope of optional arguments is global if they aren't used and local if they are (or am I missing something here)? Regards, CS -- http://mail.python.org/mailman/listinfo/python-list