Функция используется для выполнения определенной работы в Python. Мы можем разделить большую задачу на некоторое распределение работы и выполнять их по отдельности, что позволит нам легко отлаживать программу.
Синтаксис базовой функции:
def function_name(arguments):
pass
Обычные аргументы
Аргументов функции Python может быть один или несколько.
Если их несколько, разделите запятой.
Пример с простыми аргументами:
def add(x, y):
print(x + y)
add(20, 10)
Результат:
>>> 30
Что такое аргументы *args?
Мы используем *args, когда неуверены, сколько аргументов будет передано функции, или если хотим передать сохраненный список или кортеж аргументов функции.
Пример использования такой передачи аргументов:
def sample(*args):
print(args)
sample('Julia', 28, 'Vladislav', 24)
Как результат:
>>> ('Julia', 28, 'Vladislav', 24)
Что такое аргументы **kwargs?
**kwargs используется, когда мы не знаем, сколько аргументов ключевых слов будет передано, а также он может быть использован для передачи значений словаря в качестве аргументов ключевых слов. Идентификаторы args и kwargs необязательны, вы можете изменить их на другие, типа *другой **пример, но лучше использовать имя по умолчанию.
def sample(**kwargs):
print(kwargs)
sample(name='Julia', age=28, second_name='Vladislav', second_age=24)
Результат выполнения:
>>> {'name': 'Julia', 'age': 28, 'second_name': 'Vladislav', 'second_age': 24}
Или же так:
def sample(**kwargs):
print(kwargs)
sample(name='Julia', age=28)
sample(name='Vladislav', age=24, work='Python Developer')
Результат:
>>> {'name': 'Julia', 'age': 28}
>>> {'name': 'Vladislav', 'age': 24, 'work': 'Python Developer'}