>>659
def num(arg=i):
 print(arg)

と、

def num(i):
 print(i)

は同じものだと思ってるのかな?
下の場合はまたそれはそれで誤解しそうな要素を孕んでるんだけど。 この場合の i は、ローカル変数となる。外でグローバル変数として使われていてもね。