Usando argumentos padrão antes de argumentos posicionais

Eu estou aprendendo a usar argumentos posicionais em python e também tentando ver como eles funcionam quando misturados com argumentos padrão:

def withPositionalArgs(ae=9,*args):
    print 'ae= ', ae
    print 'args = ', args


a=1
b=2
c=[10,20]

withPositionalArgs(a,b,c)

Isso me dá a saída:

ae=  1
args =  (2, [10, 20])

Como você pode ver,a é considerado um valor passado poraeeb assim comoc são considerados os argumentos posicionais.

Então, agora estou tentando atribuir10 paraae enquanto chamawithPositionalArgs:

withPositionalArgs(ae=10,b,c)

Mas eu não posso fazer isso. Eu recebo o erro:

SyntaxError: non-keyword arg after keyword arg

Minha pergunta é:

Estou fazendo certo? O argumento padrão é permitido ou uma boa prática para usar antes de argumentos posicionais em funções python?

questionAnswers(3)

yourAnswerToTheQuestion