Текст задания из LMS / источника
Простое число
Напишите функцию, которая проверяет, является ли число n простым и возвращает булевый результат.
n = 17Пример вывода: Число 17 является простым
Фильтрация чисел по чётности
Функция принимает filter_type ('even' или 'odd') и произвольное количество чисел.
print(filter_numbers("even", 1, 2, 3, 4, 5, 6))
print(filter_numbers("odd", 10, 15, 20, 25))
print(filter_numbers("prime", 2, 3, 5, 7))Пример вывода: [2, 4, 6] / [15, 25] / Некорректный фильтр
Объединение словарей
Функция принимает любое количество словарей и объединяет их. При повторе ключа берётся последнее значение.
dict1 = {"a": 1, "b": 2}
dict2 = {"b": 3, "c": 4}
dict3 = {"d": 5}Пример вывода: {'a': 1, 'b': 3, 'c': 4, 'd': 5}
Пошаговое решение
Простое число
def is_prime(n):
if n < 2:
return False
for divisor in range(2, int(n ** 0.5) + 1):
if n % divisor == 0:
return False
return True
n = 17
if is_prime(n):
print(f"Число {n} является простым")
else:
print(f"Число {n} не является простым")Достаточно проверять делители до квадратного корня числа.
Фильтрация чисел
def filter_numbers(filter_type, *numbers):
if filter_type == "even":
return [number for number in numbers if number % 2 == 0]
if filter_type == "odd":
return [number for number in numbers if number % 2 != 0]
return "Некорректный фильтр"
print(filter_numbers("even", 1, 2, 3, 4, 5, 6))
print(filter_numbers("odd", 10, 15, 20, 25))
print(filter_numbers("prime", 2, 3, 5, 7))*numbers делает функцию удобной для любого количества чисел.
Объединение словарей
def merge_dicts(*dicts):
result = {}
for dictionary in dicts:
result.update(dictionary)
return result
dict1 = {"a": 1, "b": 2}
dict2 = {"b": 3, "c": 4}
dict3 = {"d": 5}
print(merge_dicts(dict1, dict2, dict3))update() перезаписывает повторяющиеся ключи значениями из более поздних словарей.
Проверка в VS Code
- Создайте файл main.py и перенесите решение.
- Запустите python main.py в терминале.
- Сравните вывод с примером из задания.
- Проверьте крайние случаи: пустые коллекции, повторяющиеся значения и некорректные параметры.