Использование аргументов по умолчанию перед позиционными аргументами

Я учусь использовать позиционные аргументы в Python, а также пытаюсь увидеть, как они работают, когда смешиваются с аргументами по умолчанию:

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


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

withPositionalArgs(a,b,c)

Это дает мне вывод:

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

Как вы видете,a считается значением, переданным дляae, а такжеb так же какc считаются позиционными аргументами.

Итак, я сейчас пытаюсь назначить10 заae во время звонкаwithPositionalArgs:

withPositionalArgs(ae=10,b,c)

Но я не могу этого сделать. Я получаю ошибку:

SyntaxError: non-keyword arg after keyword arg

My question is:

Я правильно делаю? Разрешено ли использование аргумента по умолчанию или хорошая практика для использования перед позиционными аргументами в функциях python?

Ответы на вопрос(3)

Ваш ответ на вопрос