Функции Python — Упражнения, Практика, Решение
5. Напишите функцию Python для вычисления факториала числа (неотрицательное целое число). Функция принимает число в качестве аргумента. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения
6. Напишите функцию Python, чтобы проверить, находится ли число в заданном диапазоне. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения
7. Напишите функцию Python, которая принимает строку и рассчитывает количество букв верхнего и нижнего регистра. Перейти к редактору
Пример строки : «Быстрая Лиса Бровей»
Ожидаемый результат :
Количество символов в верхнем регистре: 3
Количество строчных букв: 12
Нажмите меня, чтобы увидеть образец решения
8. Напишите функцию Python, которая берет список и возвращает новый список с уникальными элементами первого списка. Перейти к редактору
Список образцов: [1,2,3,3,3,3,4,5]
Уникальный список: [1, 2, 3, 4, 5]
Нажмите меня, чтобы увидеть образец решения
9. Напишите функцию Python, которая принимает число в качестве параметра и проверяет, является ли число простым или нет. Перейти к редактору
Примечание. Простое число (или простое число) — это натуральное число, большее 1, которое не имеет положительных делителей, кроме 1 и самого себя.
Нажмите меня, чтобы увидеть образец решения
10. Напишите программу на Python для печати четных чисел из заданного списка. Перейти к редактору
Список образцов : [1, 2, 3, 4, 5, 6, 7, 8, 9]
Ожидаемый результат : [2, 4, 6, 8]
Нажмите меня, чтобы увидеть образец решения
11. Напишите функцию Python, чтобы проверить, является ли число совершенным или нет. Перейти к редактору
Согласно Википедии: в теории чисел совершенное число — это положительное целое число, равное сумме его собственных положительных делителей, то есть сумме его положительных делителей, исключая само число (также известное как его аликвотная сумма). Эквивалентно, идеальное число — это число, которое составляет половину суммы всех его положительных делителей (включая себя).
Пример : первое совершенное число равно 6, потому что 1, 2 и 3 являются его собственными положительными делителями, а 1 + 2 + 3 = 6. Эквивалентно, число 6 равно половине суммы всех его положительных делителей: (1 + 2 + 3 + 6) / 2 = 6. Следующее совершенное число — 28 = 1 + 2 + 4 + 7 + 14. За ним следуют совершенные числа 496 и 8128.
Нажмите меня, чтобы увидеть образец решения
12. Напишите функцию Python, которая проверяет, является ли переданная строка палиндромом или нет. Перейти к редактору
Примечание. Палиндром — это слово, фраза или последовательность, которые читаются так же, как и вперёд, например, бегут мадам или медсестры.
Нажмите меня, чтобы увидеть образец решения
13. Напишите функцию Python, которая печатает первые n строк треугольника Паскаля. Перейти к редактору
Примечание. Треугольник Паскаля — это арифметическая и геометрическая фигура, впервые представленная Блезом Паскалем.
Образец треугольника Паскаля:
14. Напишите функцию Python, чтобы проверить, является ли строка панграммой или нет. Перейти к редактору
Примечание. Панограммы — это слова или предложения, содержащие каждую букву алфавита хотя бы один раз.
Например: «Быстрая коричневая лиса перепрыгивает через ленивую собаку»
Нажмите меня, чтобы увидеть образец решения
15. Напишите программу на языке Python, которая принимает в качестве входных данных последовательность слов, разделенных дефисами, и печатает слова в последовательности, разделенной дефисами, после сортировки по алфавиту. Перейти к редактору
Образцы элементов : зеленый-красный-желтый-черный-белый
Ожидаемый результат : черный-зеленый-красный-бело-желтый
Нажмите меня, чтобы увидеть образец решения
16. Напишите функцию Python, чтобы создать и распечатать список, значения которого представляют собой квадрат чисел от 1 до 30 (оба включены). Перейти к редактору
Нажмите меня, чтобы увидеть образец решения
17. Напишите программу на Python, чтобы создать в Python цепочку декораторов функций (полужирный, курсив, подчеркивание и т. Д.). Перейти к редактору
Нажмите меня, чтобы увидеть образец решения
18. Напишите программу на Python для выполнения строки, содержащей код Python. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения
19. Напишите программу на Python для доступа к функции внутри функции. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения
20. Напишите программу на Python для определения количества локальных переменных, объявленных в функции. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения
Редактор кода Python:
Еще не все !
Не отправляйте решение вышеупомянутых упражнений здесь, если вы хотите внести вклад, перейдите на соответствующую страницу упражнения.
Python функции примеры задач
Напишите функцию, которая проверяет корректность переданного ей email-адреса в виде строки. Будем полагать, что адрес верен, если он обязательно содержит символы ‘@’ и ‘.’, а все остальные символы могут принимать значения: ‘a-z’, ‘A-Z’, ‘0-9’ и ‘_’. Если email верен, то функция выводит ДА, иначе — НЕТ.
После объявления функции прочитайте (с помощью функции input) строку с email-адресом и вызовите функцию с этим аргументом.
import re pattern = re.compile(r'([A-Za-z0-9]+[.-_])*[A-Za-z0-9]+@[A-Za-z0-9-]+(\.[A-Z|a-z])+') def isValid(email): if re.fullmatch(pattern, email): print("ДА") else: print("НЕТ") isValid(input())
Объявите функцию с двумя параметрами width и height (ширина и высота прямоугольника), которая выводит сообщение (без кавычек):
«Периметр прямоугольника, равен x»
где x — вычисленный периметр прямоугольника. После объявления функции прочитайте (с помощью функции input) два целых числа, записанных в одну строку через пробел, и вызовите функцию с этими значениями.
def per(width, height): print(f'Периметр прямоугольника, равен ') width,height = list(map(int, input().split())) per(width, height)
Объявите функцию, которая принимает список, находит максимальное, минимальное и сумму значений этого списка и выводит результат в виде строки (без кавычек):
«Min = v_min, max = v_max, sum = v_sum»
где v_min, v_max, v_sum — вычисленные значения минимального, максимального и суммы значений списка.
После объявления функции прочитайте (с помощью функции input) список целых чисел, записанных в одну строку через пробел, и вызовите функцию с этим списком.
def sp(): sp = list(map(int, input().split())) print(f'Min = , max = , sum = ') sp()
Объявите функцию, которая принимает один аргумент (вещественное число), и возвращает квадрат этого числа. После объявления функции прочитайте (с помощью функции input) вещественное число и вызовите функцию с этим значением. Выведите на экран результат работы функции.
def square(x): return x ** 2 print(square(float(input())))
Объявите функцию с именем is_triangle, которая принимает три стороны треугольника (целые числа) и проверяет, можно ли из переданных аргументов составить треугольник. (Напомню, что у любого треугольника длина третьей стороны всегда должна быть меньше суммы двух других). Если проверка проходит, вернуть булево значение True, иначе — значение False.
Вызывать функцию не нужно, только задать.
def is_triangle(a, b, c): if (a b + c) and (b c + a) and (c a + b): return True else: return False
Объявите функцию с именем is_large, которая принимает строку (в качестве аргумента) и возвращает False, если длина строки меньше трех символов. Иначе возвращается значение True.
Вызывать функцию не нужно, только объявить.
def is_large(s): return False if len(s) 3 else True
Объявите функцию для проверки числа на четность (возвращается True, если переданное число четное и False, если число нечетное).
После объявления функции в цикле необходимо считывать целое числовое значение (функцией input), пока не поступит число 1. Если прочитанное значение четное (проверяется с помощью заданной функции), то оно выводится на экран (в столбик, то есть, каждое значение с новой строки).
def isEven(x): return True if x % 2 == 0 else False x = int(input()) while x != 1: if isEven(x) == True: print(x) x = int(input())
Объявите функцию для проверки числа на нечетность (возвращается True, если переданное число нечетное и False, если число четное).
После объявления функции прочитайте (с помощью функции input) список целых значений, записанных в одну строку через пробел. И, используя генератор списков и созданную функцию, сформируйте список из нечетных значений на основе введенного исходного списка. Результат отобразите на экране командой:
где lst — сформированный список из нечетных значений.
def isEven(i): return True if i % 2 != 0 else False sp = list(map(int, input().split())) lst = [] lst = [i for i in sp if isEven(i) == True] print(*lst)
Вводится слово в переменную tp. Если это слово RECT, то следует объявить функцию с именем get_sq с двумя параметрами, вычисляющую площадь прямоугольника и возвращающую вычисленное значение. (На экран она ничего не должна выводить, только возвращать значение).
Если же введенное слово не RECT (любое другое), то объявляется функция с тем же именем get_sq, с одним параметром для вычисления площади квадрата (формула: a*a). Вычисленное значение возвращается функцией. (Она также ничего не выводит на экран).
Примечание: в программе должна быть задана только одна функция с именем get_sq в зависимости от введенного слова. Вызывать функцию не нужно, только объявлять.
tp = input().strip() if tp == 'RECT': def get_sq(a, b): return a * b else: def get_sq(a): return a * a
Объявите функцию, которая принимает строку (в качестве аргумента) и возвращает False, если длина строки меньше 6 символов. Иначе возвращается значение True.
После объявления функции прочитайте (с помощью функции input) список названий городов, записанных в одну строку через пробел. Затем, используя генератор списка и созданную функцию, сформируйте список из названий городов длиной не менее шести символов на основе введенного исходного списка. Результат отобразите на экране командой:
где lst — итоговый сформированный список.
def len_str(s): return False if len(s) 6 else True sp = input().split() lst = [i for i in sp if len_str(i)] print(*lst)
Объявите функцию, которая принимает строку (в качестве аргумента) и возвращает два значения в виде кортежа: переданная строка и ее длина.
После объявления функции прочитайте (с помощью функции input) список названий городов, записанных в одну строку через пробел. Затем, используя генератор словарей и созданную функцию, сформируйте словарь d в формате:
Выведите этот словарь в порядке возрастания длин строк с помощью команд:
a = sorted(d, key=lambda x: d[x]) print(*a)
def f(s): return s, len(s) l = [_ for _ in input().split()] d = f(item)[0]:f(item)[1] for item in l> a = sorted(d, key=lambda x: d[x]) print(*a)
Вводится список целых чисел в одну строчку через пробел. Необходимо задать функцию, которая принимает два аргумента (максимальное и минимальное значения из списка) и возвращает их произведение. Вызовите эту функцию и отобразите на экране полученное числовое значение.
Подсказка: для передачи аргументов функции используйте функции max и min для введенного списка чисел.
def prod(l): return min(l) * max(l) print(prod(list(map(int, input().split()))))