Решение модуля 7.6 Инди-курс программирования на Python

Модуль 7.6 (Передача аргументов. Сопоставление аргументов по имени и позиции). Оператор return позволяет вернуть из функции значение, которое потом мы можем использовать для своих целей.

Перед вами функция add

def add(a: int, b: int) -> int:
   return a + b

Выберите правильные способы вызова функции add


add(2, 3)
add(a=2, b=3)
add(2, b=3)

Что увидим после запуска этого кода?

def add(a: int, b: int) -> int:
    return a + b


print(add(3, 4, 6))
TypeError: add() takes 2 positional arguments but 3 were given

Что увидим после запуска этого кода?

def add(a: int, b: int) -> int:
    return a + b


print(add(3))
TypeError: add() missing 1 required positional argument: 'b'

Перед вами функция, которая проверяет пароль пользователя

def check_password(login: str, password: str, min_length: int = 8) -> bool:
    if len(password) < min_length:
        print('Пароль слишком короткий')
        return False
    elif login in password:
        print('Пароль содержит имя пользователя')
        return False
    else:
        print(f'Пароль для пользователя {login} прошел все проверки')
        return True

Укажите какие параметры являются обязательными, а какие нет

Решение модуля 7.6 Инди-курс программирования на Python

Перед вами функция

def f(qty: int = 6, item: str = 'bananas', price: float = 1.74):
    print(f'{qty} {item} cost ${price:.2f}')

Укажите какие параметры являются обязательными, а какие нет

Решение модуля 7.6 Инди-курс программирования на Python

Что увидим после запуска этого кода?
def add(a: int, b: int, c: int = 20) -> int: return a + b + c print(add(3, 4))
27

Что увидим после запуска этого кода?

def add(a: int, b: int, c: int = 20) -> int:
    return a + b + c


print(add(3, 4, 10))
17

Напишите функцию replace, которая принимает три параметра:

  • обязательный строковый параметр text — текст, в котором необходимо выполнить замены;
  • обязательный строковый параметр old — строка поиска для замены;
  • необязательный строковый параметр new — значение замены для найденного значения old. По умолчанию равен пустой строке.

Функция replace должна возвращать новую строку, в которой все символы old были заменены на new. При замены регистр букв должен учитываться

replace('Нет', 'т') => 'Не'
replace('Bella Ciao', 'a') => 'Bell Cio'
replace('nobody; i myself farewell analysis', 'l', 'z') => 'nobody; i mysezf farewezz anazysis'
replace('commend me to my kind lord meaning', 'M', 'w') => 'commend me to my kind lord meaning'

Ваша задача дописать только тело функции replace

# объявление функции
def replace(text: str, old: str, new: str = ''):
    return text.replace(old, new)   # возвращаем строку с замененными символами

В HTML используются специальные теги для определения заголовков в веб-странице.

Всего существует шесть тегов заголовков HTML:

  • <h1> — заголовок первого уровня;
  • <h2> — заголовок второго уровня;
  • <h3> — заголовок третьего уровня;
  • <h4> — заголовок четвертого уровня;
  • <h5> — заголовок пятого уровня;
  • <h6> — заголовок шестого уровня.

Разница между заголовками только в размере, на картинке можно наглядно это увидеть

Решение модуля 7.6 Инди-курс программирования на Python

Ваша задача создать функцию make_header, которая принимает

  • обязательный параметр — строку, которую нужно обернуть в тег заголовка
  • необязательный числовой параметр — уровень заголовка, по умолчанию принимает значение 1.

Функция make_header должна возвращать переданную строку в обернутый тег заголовка определенного уровня

make_header('Нет') => '<h1>Нет</h1>'
make_header('Bella Ciao', 4) => '<h4>Bella Ciao</h4>'
make_header('Go little rock star', 6) => '<h6>Go little rock star</h6>'
make_header('Девальвации не будет. Твердо и четко') => '<h1>Девальвации не будет. Твердо и четко</h1>'

Ваша задача дописать только тело функции make_header

def make_header(text: str, level: int = 1) -> str:  # объявляем функцию, принимающую 1 обязательный и 1 необязательный параметр
    return f'<h{level}>{text}</h{level}>'           # возвращаем строку с подставленными значениями

Ваша задача создать функцию create_matrix, которая принимает

  • необязательный числовой параметр size — размер квадратной матрицы, по умолчанию принимает значение 3;
  • необязательный числовой параметр up_fill — значение заполнителя элементов, находящихся выше главной диагонали. По умолчанию равен 0;
  • необязательный числовой параметр down_fill — значение заполнителя элементов, находящихся ниже главной диагонали. По умолчанию равен 0;

Функция create_matrix должна возвращать квадратную матрицу размером size х size, на диагонали которой располагаются числа от 1 до size. Все остальные элементы заполнены согласно параметрам up_fill и down_fill.

create_matrix() => [[1, 0, 0], [0, 2, 0], [0, 0, 3]]
create_matrix(4) => [[1, 0, 0, 0], [0, 2, 0, 0], [0, 0, 3, 0], [0, 0, 0, 4]]

create_matrix(up_fill=7) => [[1, 7, 7],
                             [0, 2, 7],
                             [0, 0, 3]]

create_matrix(up_fill=7, down_fill=9) => [[1, 7, 7],
                                          [9, 2, 7],
                                          [9, 9, 3]]


create_matrix(size=4, up_fill=7, down_fill=9) => [[1, 7, 7, 7],
                                                  [9, 2, 7, 7],
                                                  [9, 9, 3, 7],
                                                  [9, 9, 9, 4]]

Ваша задача дописать только тело функции create_matrix

def create_matrix(size: int = 3, up_fill: int = 0, down_fill: int = 0):
    lst = []                 # создаем список для создания матрицы
    for i in range(size):    # заполняем матрицу определенного размера нулями
        lst.append([0] * size)
    for i in range(size):    # теперь определенные области заменяем заданными числами
        for j in range(size):
            if i == j:       # центральную диагональ (от верхнего левого к правому нижнему) заменяем числами от 1 до размера
                lst[i][j] = j + 1
            elif i < j:      # ячейки выше центральной диагонали заменяем числами up_fill
                lst[i][j] = up_fill
            elif i > j:      # ячейки ниже центральной диагонали заменяем числами down_fill
                lst[i][j] = down_fill

    return lst

Если у вас не отображается решение последних задач, значит у вас включен блокировщик рекламы который вырезает эти ответы

Понравилась статья? Поделиться с друзьями:
Подписаться
Уведомить о
guest

0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии
0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x