Модуль 7.1 Что такое функции. Их объявление и вызов.
Отметьте все верные пункты записи команд, не приводящих к ошибкам.
len("123")
print
len
print()
fl = len
dp = print
Отметьте все верные пункты, справедливые для функции.
функция выполняет фрагмент программы, записанный в теле функции
оператор вызова функции - это ()
именами функций следует выбирать глаголы (например, go, set, get и т.п.)
функция служит для устранения дублирования кода
функция может быть вызвана в любом (допустимом) месте программы произвольное число раз
имя функции - это ссылка на объект-функцию
Задайте функцию, которая не принимает никаких аргументов и просто выводит на экран строку:
It’s my first function
В конце программы вызовите эту функцию.
# создаем функцию def a(): print("It's my first function") # вызываем функцию a()
Запишите функцию без аргументов, которая считывает с клавиатуры имя и фамилию, записанные в одну строку через пробел, и выводит на экран сообщение (без кавычек):
«Уважаемый, <имя> <фамилия>! Вы верно выполнили это задание!»
В конце программы вызовите эту функцию.
# создаем функцию def print_alert(): try: name, surname = input().split() mess = f"Уважаемый, {name} {surname}! Вы верно выполнили это задание!" except Exception as ex: # Просто для проверки... Обработка ошибок ввода (ValueError) mess = f"Произошло исключение типа {type(ex).__name__}\n{ex.args}" print(mess) # вызываем функцию print_alert()
Объявите функцию, которая имеет один параметр — вес предмета и выводит на экран сообщение (без кавычек):
«Предмет имеет вес: x кг.»
где x — переданное значение функции. После объявления функции прочитайте (с помощью функции input) вещественное число и вызовите функцию с этим значением.
# создаем функцию def f(x: str) -> str: return f'Предмет имеет вес: {x} кг.' # вызываем функцию print(f(input()))
Объявите функцию, которая принимает список, находит максимальное, минимальное и сумму значений этого списка и выводит результат в виде строки (без кавычек):
«Min = v_min, max = v_max, sum = v_sum»
где v_min, v_max, v_sum — вычисленные значения минимального, максимального и суммы значений списка.
После объявления функции прочитайте (с помощью функции input) список целых чисел, записанных в одну строку через пробел, и вызовите функцию с этим списком.
def print_min_max_sum(nums): """ Принимает коллекцию чисел и печатает её минимальное и максимальное значения, сумму её элементов """ print(f"Min = {min(nums)}, max = {max(nums)}, sum = {sum(nums)}") print_min_max_sum([int(x) for x in input().split()])
Объявите функцию с двумя параметрами width и height (ширина и высота прямоугольника), которая выводит сообщение (без кавычек):
«Периметр прямоугольника, равен x»
где x — вычисленный периметр прямоугольника. После объявления функции прочитайте (с помощью функции input) два целых числа, записанных в одну строку через пробел, и вызовите функцию с этими значениями.
def perimetr(width, height): """ Функция вычисляет периметр прямоугольника :param width: Ширина :param height: Высота :return: Ни чего не возвращает, выводит в консоль периметр прямоугольника """ print(f"Периметр прямоугольника, равен {(width+height)*2}") width, height = map(int, input().split()) # Каскадное присваивание perimetr(width, height) # Вызываем функцию c 2 аргументами
Напишите функцию, которая проверяет корректность переданного ей email-адреса в виде строки. Будем полагать, что адрес верен, если он обязательно содержит символы ‘@’ и ‘.’, а все остальные символы могут принимать значения: ‘a-z’, ‘A-Z’, ‘0-9’ и ‘_’. Если email верен, то функция выводит ДА, иначе — НЕТ.
После объявления функции прочитайте (с помощью функции input) строку с email-адресом и вызовите функцию с этим аргументом.
import string # Импортируем модуль со всякими текстовыми штуками def func(text): # Создаем переменную, в которую будут входить все допустимые символы для проверки. (1-е слагаемое: все буквы анг. алфавита в нижнем регистре; 2-ое слагаемое: все буквы англ. алфавита в верхнем регистре; 3-е слагаемое: все цифры от 0 до 9 включительно; 4-е слагаемое: символы из условия (собачка, бордюрчик, камешек)) all_chars = string.ascii_lowercase + string.ascii_uppercase + string.digits + '_@.' # Проходимся циклом по электронной почте и проверяем каждый символ, есть ли он в нашей буквенно-символьной солянке. Если нет, возвращаем НЕТ и выходим из функции. for i in text: if i not in all_chars: return 'НЕТ' return 'ДА' print(func(input()))
Если у вас не отображается решение последних задач, значит у вас включен блокировщик рекламы который вырезает эти ответы
не работает последняя задача. Попробуйте так:
def proverka(mail):
set_A = {‘A’,’E’,’I’,’O’,’U’,’Y’,’B’,’C’,’D’,’F’,’G’,’H’,’J’,’K’,’L’,’M’,’N’,’P’,’Q’,’R’,
‘S’,’T’,’V’,’W’,’X’,’Y’,’Z’,’0′,’1′,’2′,’3′,’4′,’5′,’6′,’7′,’8′,’9′,’_’,’a’,’e’,
‘i’,’o’,’u’,’y’,’b’,’c’,’d’,’f’,’g’,’h’,’j’,’k’,’l’,’m’,’n’,’p’,’q’,’r’,’s’,’t’,
‘v’,’w’,’x’,’y’,’z’,’@’,’.’}
set_B = set(mail)
print(‘ДА’ if (set_B — set_A) == set() and «@» in set_B and «.» in set_B else ‘НЕТ’)
mail = input()
proverka(mail)