Практика
Коллекции
Подсчет уникальных слов.
Напишите функцию, которая принимает на вход строку и возвращает словарь, в котором ключи - слова из строки, а значения - количество раз, которое каждое слово встречается.
# пример входных данных
input_str = 'Python is powerful. Python is easy to learn. Python is fun.'
Финансовая грамотность.
Создайте словарь, представляющий собой записную книжку с тратами по разным категорям, где ключи - названия категорий, а значения - деньги, которые были потрачены в этой категории (целые положительные числа). Напишите функцию, которая принимает два словаря (представляющих две записные книжки) и возвращает новый словарь, в котором значения трат сложены.
# пример входных данных:
finance_plan_1 = {'Home': 150, 'Transport': 15, 'Daily Expenses': 100, 'Entertainment': 80, 'Health': 60, 'Vacation': 40}
finance_plan_2 = {'Home': 100, 'Transport': 12, 'Daily Expenses': 107, 'Entertainment': 55, 'Health': 190, 'Vacation': 150}
Удаление элементов из словаря.
Напишите функцию, которая удаляет все элементы словаря, ключи которых начинаются на определенную букву.
# пример входных данных
my_dict = {'apple': 1, 'banana': 2, 'orange': 3, 'grape': 4}
# пример использования функции
remove_keys_starting_with(my_dict, 'b')
Уникальные слова.
Напишите функцию, которая принимает текст и возвращает множество уникальных слов в этом тексте, игнорируя регистр.
# пример входных данных
my_text = "Python is a powerful programming language. Python is also easy to learn."
Объединение множеств.
Напишите функцию, которая принимает список множеств и возвращает их объединение.
# пример входных данных и использования функции
set1 = {1, 2, 3}
set2 = {3, 4, 5}
set3 = {5, 6, 7}
sets_to_combine = [set1, set2, set3]
result_union = union_of_sets(sets_to_combine)
Преобразование DNA в RNA
ДНК и РНК это последовательности нуклеотидов.
Четыре нуклеотида в ДНК:
Аденин (A)
Цитозин (C)
Гуанин (G)
Тимин (T)
Четыре нуклеотида в РНК:
Аденин (A)
Цитозин (C)
Гуанин (G)
Урацил (U)
Цепь РНК составляется на основе цепи ДНК последовательной заменой каждого нуклеотида:
G
->C
C
->G
T
->A
A
->U
Напишите функцию to_rna
, которая принимает на вход цепь ДНК и возвращает соответствующую цепь РНК (совершает транскрипцию РНК).
# пример использования
to_rna('ACGTGGTCTTAA')
# 'UGCACCAGAAUU'
Скрэббл
Реализуйте функцию-предикат scrabble
, которая принимает на вход два параметра: набор символов (строку) и слово. Функция должна проверять, можно ли из переданного набора составить это слово. В результате вызова функция возвращает True или False.
При проверке учитывается количество символов, которые нужны для составления слова, но не учитывается их регистр.
Для решения используйте встроенный инструмент — Counter.
# примеры использования
scrabble('rkqodlw', 'world') # True
scrabble('avj', 'java') # False
scrabble('avjafff', 'java') # True
scrabble('', 'top') # False
scrabble('scriptingjava', 'JavaScript') # True
Last updated