Модуль 15.1 (Необязательные и именованные аргументы) курса «Поколение Python: курс для продвинутых» курс расскажет о:
- Позиционные аргументы
- Необязательные аргументы
- Именованные аргументы
Публикуем решения на урок 15.1 Необязательные и именованные аргументы.
Аргументы функции, которые передаются без указания имен, называются
позиционными
Аргументы функции, которые передаются вместе с именами, называются
именованными
Когда при вызове функции следует применять именованные аргументы?
если функция принимает аргументы, которые имеют одинаковый тип
если функция принимает больше трёх аргументов
Выберите правильные способы вызова функции
my_func()
, которая была определена так:
def my_func(x, y):
my_func(x=10, y=20)
my_func(10, y=20)
my_func(10, 20)
Какой вариант вызова функции
greet()
соответствует стандарту PEP 8?Вариант А:
greet(name=’Timur’, msg=’Good morning!’)
Вариант Б:
greet(name = ‘Timur’, msg = ‘Good morning!’)
Вариант А
Где при вызове функции нужно указывать именованные аргументы?
после позиционных аргументов
Аргументы функции, имеющие значения по умолчанию, называются
необязательными
Что выведет следующий код?
def fancy(length, char1, char2):
return (char1 + char2) * length + char1print(fancy(5, ‘-‘, ‘*’))
-*-*-*-*-*-
Что выведет следующий код?
def fancy(length, char1=’-‘, char2=’*’):
return (char1 + char2) * length + char1print(fancy(3))
-*-*-*-
Что выведет следующий код?
def fancy(length, char1=’-‘, char2=’*’):
return (char1 + char2) * length + char1print(fancy(3, ‘.’))
.*.*.*.
Что выведет следующий код?
def fancy(length, char1=’-‘, char2=’*’):
return (char1 + char2) * length + char1print(fancy(2, ‘:’, ‘|’))
:|:|:
Что выведет следующий код?
def fancy(length, char1=’-‘, char2=’*’):
return (char1 + char2) * length + char1print(fancy(4, char2=’#’))
-#-#-#-#-
Что выведет следующий код?
def fancy(length, char1=’-‘, char2=’*’):
return (char1 + char2) * length + char1print(fancy(char2=’$’, length=3))
-$-$-$-
Что выведет следующий код?
def fancy(length, char1=’-‘, char2=’*’):
return (char1 + char2) * length + char1print(fancy(char2=’!’))
произойдет ошибка во время выполнения программы
Напишите функцию
matrix()
, которая создает, заполняет и возвращает матрицу заданного размера. При этом (в зависимости от переданных аргументов) она должна вести себя так:—
matrix()
— возвращает матрицу 1 \times 11× 1, в которой единственное число равно нулю;
—matrix(n)
— возвращает матрицу n \times nn× n, заполненную нулями;
—matrix(n, m)
— возвращает матрицу из nn строк и mm столбцов, заполненную нулями;
—matrix(n, m, value)
— возвращает матрицу из nn строк и mm столбцов, в которой каждый элемент равен числуvalue
.При создании функции пользуйтесь аргументами по умолчанию.
def matrix(n =1,m = 0, a = 0):
if n == 1 and not m:
m = 1
elif n != 1 and not m:
m = n
return [[a]*m for _ in range(n)]
Если у вас не отображается решение последних задач, значит у вас включен блокировщик рекламы который вырезает эти ответы