def, за которым следует имя функции, круглые скобки (в которых указываются параметры функции, если они есть) и двоеточие. Тело функции начинается с отступом.
  
def my_function(parameter1, parameter2):
    # Тело функции
    return parameter1 + parameter2
  В Python функция объявляется с использованием ключевого слова def, за которым следует имя функции, круглые скобки (), содержащие аргументы (если они есть), и двоеточие :.  Тело функции располагается под отступом.
Вот пример базового объявления функции:
def greet(name):
  """Эта функция здоровается с переданным именем."""
  print(f"Привет, {name}!")
# Вызов функции
greet("Иван")
  Разберем по частям:
def: Ключевое слово, указывающее, что начинается определение функции.greet: Имя функции (выбирается разработчиком).  Старайтесь давать функции имена, отражающие ее назначение.(name): Аргументы, которые функция принимает.  В данном случае, функция принимает один аргумент с именем name.  Функция может принимать ноль, один или несколько аргументов. Если аргументов нет, скобки остаются пустыми: def my_function()::: Обязательный символ, обозначающий конец строки объявления функции."""Эта функция здоровается с переданным именем.""": Документирующая строка (docstring).  Опционально, но настоятельно рекомендуется добавлять документацию к каждой функции.  Она описывает, что делает функция и какие аргументы она принимает. Docstring доступен через атрибут __doc__.print(f"Привет, {name}!"): Тело функции.  Содержит код, который выполняется, когда функция вызывается.  В данном случае, функция выводит приветствие с использованием переданного имени.def.Пример функции без аргументов:
def say_hello():
  print("Привет!")
say_hello() # Вызов функции
  Пример функции с несколькими аргументами:
def add(x, y):
  """Эта функция возвращает сумму двух чисел."""
  return x + y
result = add(5, 3)
print(result) # Выведет 8
  Ключевое слово return:
Функция может возвращать значение, используя ключевое слово return. Если return не указан, функция возвращает None по умолчанию.