Это именно то, что говорит ошибка:
Error:positional argument follows keyword argument
Вы не можете иметь позиционные аргументы после ключевых аргументов.
Ваш пример является хорошим примером.
Вы указываете первый аргумент в качестве ключевого аргумента.Поэтому неоднозначно, как интерпретатор теперь интерпретирует порядок параметров.2-й аргумент становится первым параметром?Второй параметр?Но вы уже указали первый параметр (firstname='John'
), так что происходит с позиционным параметром?
def student (имя, стандарт, фамилия): print (имя, фамилия, «учится в», стандарт, 'Стандарт')
student(firstname ='John','Gates','Seventh')
Интерпретация интерпретирует это как:
student(firstname ='John',standard='Gates',lastname='Seventh')
или
student(firstname ='John',standard='Gates',lastname='Seventh')
или
student(firstname ='John',firstname='Gates',lastname='Seventh')
Как насчет:
student(lastname ='John','Gates','Seventh')
This?
student(lastname ='John',firstname='Gates',standard='Seventh')
или this?
student(lastname ='John',standard='Gates',firstname='Seventh')
Удачи в попытке отладить, какой аргумент соответствует какому параметру.