Модуль 7.4 Именованные аргументы. Фактические и формальные параметры.
Отметьте все верные определения.
формальные параметры - это параметры функции со значениями по умолчанию
фактические параметры - это позиционные параметры функции без значений по умолчанию
позиционные аргументы - это передаваемые функции значения, записанные через запятую
именованные аргументы - это значения с дополнительным указанием имени параметра функции
Объявите функцию с именем get_rect_value, которая принимает два аргумента (два числа) и еще один формальный параметр type с начальным значением 0. Если параметр type равен нулю, то функция должна возвращать периметр прямоугольника, а иначе — его площадь.
P. S. Вызывать функцию не нужно, только объявить.
def get_rect_value(a:int, b:int, type=0)->int: ''' принимает два аргумента (два числа) и еще один формальный параметр type с начальным значением 0. Если параметр type равен нулю, то функция должна возвращать периметр прямоугольника, а иначе - его площадь. :param a: :param b: :param type: :return: ''' if type == 0: return a * 2 + b * 2 else: return a * b
Объявите функцию с именем check_password, которая принимает аргумент — строку (пароль) и имеет один формальный параметр chars с начальным значением в виде строки «$%!?@#». Функция должна проверять: есть ли в пароле хотя бы один символ из chars и что длина пароля не менее 8 символов. Если проверка проходит, то функция возвращает True, иначе — False.
P. S. Вызывать функцию не нужно, только объявить.
def check_password(st:str, chars='$%!?@#')->bool: ''' принимает аргумент - строку (пароль) и имеет один формальный параметр chars с начальным значением в виде строки "$%!?@#". Функция должна проверять: есть ли в пароле хотя бы один символ из chars и что длина пароля не менее 8 символов. Если проверка проходит, то функция возвращает True, иначе - False. :param st: строка пароля :param chars: '$%!?@#' :return: True or False ''' return all([any([i in st for i in chars]), len(st) > 7])
Объявите функцию, которая принимает строку на кириллице и преобразовывает ее в латиницу, используя следующий словарь для замены русских букв на соответствующее латинское написание:
t = {'ё': 'yo', 'а': 'a', 'б': 'b', 'в': 'v', 'г': 'g', 'д': 'd', 'е': 'e', 'ж': 'zh', 'з': 'z', 'и': 'i', 'й': 'y', 'к': 'k', 'л': 'l', 'м': 'm', 'н': 'n', 'о': 'o', 'п': 'p', 'р': 'r', 'с': 's', 'т': 't', 'у': 'u', 'ф': 'f', 'х': 'h', 'ц': 'c', 'ч': 'ch', 'ш': 'sh', 'щ': 'shch', 'ъ': '', 'ы': 'y', 'ь': '', 'э': 'e', 'ю': 'yu', 'я': 'ya'}Функция должна возвращать преобразованную строку. Замены делать без учета регистра (исходную строку перевести в нижний регистр — малые буквы). У функции также определить формальный параметр sep с начальным значением в виде строки «-«. Он будет определять символ для замены пробелов в строке.
После объявления функции прочитайте (с помощью функции input) строку и дважды вызовите функцию (с выводом результата ее работы на экран):
— первый раз только со строкой
— второй раз со строкой и именованным аргументом sep со значением ‘+’.
t = {'ё': 'yo', 'а': 'a', 'б': 'b', 'в': 'v', 'г': 'g', 'д': 'd', 'е': 'e', 'ж': 'zh', 'з': 'z', 'и': 'i', 'й': 'y', 'к': 'k', 'л': 'l', 'м': 'm', 'н': 'n', 'о': 'o', 'п': 'p', 'р': 'r', 'с': 's', 'т': 't', 'у': 'u', 'ф': 'f', 'х': 'h', 'ц': 'c', 'ч': 'ch', 'ш': 'sh', 'щ': 'shch', 'ъ': '', 'ы': 'y', 'ь': '', 'э': 'e', 'ю': 'yu', 'я': 'ya'} def translit(text: str, sep: str = '-') -> str: """ Функция принимает строку на кириллице и разделитель, и преобразовывает ее в латиницу. """ sp = [t[el] if el in t else el for el in text] res = sep.join(''.join(sp).split()) return res text = input().lower() # Получаем ввыденный текст print(translit(text)) # Выводим текст с разделителем по умолчанию print(translit(text, '+')) # Выводим текст с нашим разделителем
Объявите функцию, которая принимает строку и заключает ее в указанный тег. Тег определяется формальным параметров tag с начальным значением в виде строки «h1». Например, мы передаем строку «Hello Python» и заключаем в тег «h1». На выходе должны получить строку (без кавычек):
«<h1>Hello Python</h1>»
То есть, сначала открывается тег <h1>, а в конце строки — закрывается </h1>. И так для любых указанных тегов.
После объявления функции прочитайте (с помощью функции input) строку и дважды вызовите функцию (с выводом результата ее работы на экран):
— первый раз только со строкой
— второй раз со строкой и именованным аргументом tag со значением ‘div’.
def tg(st: str, tag='h1')->str: ''' принимает строку и заключает ее в указанный тег. Тег определяется формальным параметров tag с начальным значением в виде строки "h1". :param st: входящая строка :param tag: таг :return: <tag>строка</tag> ''' return f'<{tag}>{st}</{tag}>' st = input() print(tg(st)) print(tg(st, tag='div'))
Функции из предыдущего подвига 5 добавьте еще один формальный параметр up с начальным булевым значением True. Если параметр up равен True, то тег (указанный в формальном параметре tag) следует записывать заглавными буквами, а иначе — малыми.
После объявления функции прочитайте (с помощью функции input) строку и дважды вызовите функцию (с выводом результата ее работы на экран):
— первый раз со строкой и именованным аргументом tag со значением ‘div’
— второй раз со строкой, именованным аргументом tag со значением ‘div’ и именованным аргументом up со значением False.
<div class="zazlo_r3"></div>
def get_tags(text: str, tag: str = 'h1', up: bool = True) -> str: """ Функция принимает строку и заключает ее в указанный тег.""" tag = tag.upper() if up else tag return f'<{tag}>{text}</{tag}>' text = input() print(get_tags(text, 'div')) print(get_tags(text, 'div', False))
Если у вас не отображается решение последних задач, значит у вас включен блокировщик рекламы который вырезает эти ответы