Функции в Python: параметры, аргументы, lambda

Мы просто и по делу рассказываем про ИИ-инструменты для работы: сравнения, пошаговые гайды, бесплатные альтернативы и реальные сценарии применения. Помогаем выбрать между ChatGPT, Gemini, Claude, локальными моделями и десятками узкоспециализированных сервисов — от дизайна и HR до аналитики и SEO. Меньше хайпа, больше практики и экономии времени каждый день.

pythonфункцииlambda

Функции в Python нужны, чтобы переиспользовать код, делать программу понятнее и легче поддерживать. Если вы ищете, чем отличаются параметры и аргументы, как работают позиционные и именованные значения, и где применять lambda, — вот краткий и практичный разбор.

Что такое функция

Функция — это блок кода, который выполняет задачу и может принимать входные данные.

def greet(name):
    return f"Привет, {name}!"

Здесь nameпараметр функции.

Параметры и аргументы

Частая путаница:

  • параметр — переменная в объявлении функции
  • аргумент — конкретное значение при вызове
def add(a, b):   # a и b — параметры
    return a + b

add(2, 3)        # 2 и 3 — аргументы

Основные виды аргументов

  1. Позиционные

    print(pow(2, 3))   # 2 и 3 переданы по порядку
    
  2. Именованные

    def connect(host, port):
        return f"{host}:{port}"
    
    connect(port=5432, host="localhost")
    
  3. Аргументы по умолчанию

    def hello(name="мир"):
        return f"Привет, {name}"
    

Важно: не используйте изменяемые значения по умолчанию вроде [] или {} — это частая ошибка ⚠️

Плохо:

def add_item(item, items=[]):
    items.append(item)
    return items

Лучше:

def add_item(item, items=None):
    if items is None:
        items = []
    items.append(item)
    return items

args и kwargs

Нужны, когда количество аргументов заранее неизвестно.

def total(*args):
    return sum(args)

def profile(**kwargs):
    return kwargs

*args собирает позиционные аргументы в кортеж,
**kwargs — именованные аргументы в словарь.

Что такое lambda

lambda — это анонимная функция для коротких операций. Удобна там, где не нужна полноценная def.

square = lambda x: x * x
print(square(4))  # 16

Часто используется с sorted(), map(), filter():

users = [("Анна", 25), ("Игорь", 19), ("Мария", 30)]
sorted_users = sorted(users, key=lambda user: user[1])

Здесь список сортируется по возрасту 👨‍💻

Когда использовать lambda, а когда def

  • lambda — для простых одноразовых выражений
  • def — если логика сложнее, нужна читаемость или документация

Если выражение в lambda трудно понять с первого взгляда, лучше вынести его в обычную функцию 🧠

Что важно запомнить

  • параметры — в объявлении, аргументы — при вызове
  • есть позиционные, именованные и значения по умолчанию
  • *args и **kwargs делают функции гибкими
  • lambda подходит для коротких операций, но не заменяет обычные функции полностью

Функции — одна из базовых тем Python, и хорошее понимание параметров и аргументов напрямую влияет на качество кода, читаемость и успех на собеседованиях 🚀

📌 Загляните в подборку каналов про IT — там ещё больше полезных материалов по Python, разработке и карьере в технологиях.

🗣 Подборки каналов
🧠 Каталог ботов и приложений
🗺 Навигация

Читайте так же