Главная страница » Python » 35. Аргументы по умолчанию
Добро пожаловать на тридцать пятый урок по Python! Сегодня мы обсудим аргументы по умолчанию в функциях. Аргументы по умолчанию позволяют задавать значения параметров, которые будут использоваться, если вызов функции не передает явных значений для этих параметров. Это упрощает вызов функций и делает их более гибкими.
Аргументы по умолчанию — это параметры функции, которые имеют заранее определенные значения. Если при вызове функции не переданы значения для этих параметров, используются значения по умолчанию.
def greet(name="Guest"):
print(f"Hello, {name}!")
greet() # Вывод: Hello, Guest!
greet("Alice") # Вывод: Hello, Alice!
Пример 1: Функция с одним аргументом по умолчанию
def greet(name="Guest"):
print(f"Hello, {name}!")
greet() # Вывод: Hello, Guest!
greet("Alice") # Вывод: Hello, Alice!
Пример 2: Функция с несколькими аргументами по умолчанию
def greet(name="Guest", age=18):
print(f"Hello, {name}! You are {age} years old.")
greet() # Вывод: Hello, Guest! You are 18 years old.
greet("Alice") # Вывод: Hello, Alice! You are 18 years old.
greet("Bob", 25) # Вывод: Hello, Bob! You are 25 years old.
Пример 3: Функция с обязательными и необязательными аргументами
def greet(greeting, name="Guest"):
print(f"{greeting}, {name}!")
greet("Hi") # Вывод: Hi, Guest!
greet("Hello", "Alice") # Вывод: Hello, Alice!
Позиция аргументов по умолчанию: Аргументы по умолчанию всегда должны следовать после обязательных аргументов. В противном случае возникнет синтаксическая ошибка.
# Неправильно:
# def greet(name="Guest", greeting):
# print(f"{greeting}, {name}!")
Изменяемые типы данных в качестве аргументов по умолчанию: Избегайте использования изменяемых типов данных (например, списков или словарей) в качестве значений по умолчанию, так как они могут приводить к неожиданным результатам.
def add_to_list(item, my_list=[]):
my_list.append(item)
return my_list
print(add_to_list(1)) # Вывод: [1]
print(add_to_list(2)) # Вывод: [1, 2] (ожидалось [2])
Вместо этого используйте None
и инициализируйте изменяемый объект внутри функции:
def add_to_list(item, my_list=None):
if my_list is None:
my_list = []
my_list.append(item)
return my_list
print(add_to_list(1)) # Вывод: [1]
print(add_to_list(2)) # Вывод: [2]
Сегодня вы узнали о аргументах по умолчанию в функциях Python. Аргументы по умолчанию делают функции более гибкими и удобными для использования, упрощая вызов функций с различными наборами аргументов.
Наша цель и главная задача сделать качественное образование в вашем браузере
Телефон: +375 33 910-08-92
Email: info@codefor.tech
Адрес: г. Барановичи, ул. Пирогова, д. 7
© 2024 Все права защищены. CodeFor.