Ключевые и позиционные аргументы

При вызове функций мы передаём значения аргументов, чтобы функция могла использовать эти значения при выполнении. Эти значения можно передать как позиционными, так и ключевыми аргументами:
def rectangle(h, w, val=0):
    return [[val] * w] * h

print(rectangle(2, 3, 1))
# [[1, 1, 1], [1, 1, 1]]
def rectangle(h, w, val=0):
    return [[val] * w] * h

print(rectangle(2, w=3, val=1))
# [[1, 1, 1], [1, 1, 1]]
Мы можем передавать значения аргументам, указывая имена этих аргументов, как это сделано во втором примере (val=1 или w=3).
Это особенно полезно для функций с большим количеством аргументов, большинство из которых имеют значения по умолчанию. В таком случае мы можем передать ключевые аргументы только для нужных параметров и пропустить остальные.
Обратите внимание, что ключевые аргументы не обязательно указывать в том же порядке, что и в определении функции. Они могут быть в любом порядке, если их имена соответствуют именам аргументов функции. Также важно отметить, что позиционные аргументы не могут следовать после ключевых аргументов. При вызове функции мы сначала указываем позиционные аргументы, а затем ключевые. Можете ли вы подумать, почему это так 🤔?

Задача

Дана функция, которая выводит свойства пациента. Вызовите её 3 раза со следующим порядком аргументов:
  1. name, age, height
  1. age, name, height
  1. height, age, name
При этом вывод каждой функции должен быть одинаковым, но вы можете использовать как позиционные, так и ключевые аргументы для вызова функции.
 

Constraints

Time limit: 2 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue