Вопрос задан 02.08.2026 в 23:37. Предмет Информатика. Спрашивает Лысенко Катя.

Python
Дан кортеж, состоящий из разных типов данных:
data_tuple = ('а', 6.13, 'К', 'а', 'О', True, 'м', 'р', 3, 'ш', 1, 'г')

Создать два пустых списка letters и numbers.
Пройтись циклом for по кортежу data_tuple, добавить все строки в список letters, а всё остальное в numbers.
Из списка numbers удалить число 6.13 и переместить True в конец списка letters, затем вставить число 2 между 3 и 1.
Отсортировать numbers, реверсировать letters и изменить пару букв в letters.
Измените список numbers в список квадратов своих же чисел.
Преобразовать списки numbers и letters в кортежи.

В итоге:
кортеж letters должен выглядеть так: (True, 'Г', 'а', 'р', 'М', 'о', 'ш', 'к', 'а')
кортеж numbers должен выглядеть так: (1, 4, 9)

Перейти к ответам

Ответы на вопрос

Отвечает Кучеренко Сергій.

Python
data_tuple = ('а', 6.13, 'К', 'а', 'О', True, 'м', 'р', 3, 'ш', 1, 'г')

# Создаём пустые списки letters = [] numbers = []

# Распределяем элементы кортежа по спискам for item in data_tuple: if isinstance(item, str): letters.append(item) else: numbers.append(item)

# letters: ['а', 'К', 'а', 'О', 'м', 'р', 'ш', 'г'] # numbers: [6.13, True, 3, 1]

# Удаляем число 6.13 numbers.remove(6.13)

# Находим именно True, удаляем его из numbers # и добавляем в конец letters for index, item in enumerate(numbers): if item is True: letters.append(numbers.pop(index)) break

# numbers: [3, 1] # letters: ['а', 'К', 'а', 'О', 'м', 'р', 'ш', 'г', True]

# Вставляем число 2 после числа 3, то есть между 3 и 1 index_of_three = numbers.index(3) numbers.insert(index_of_three + 1, 2)

# numbers: [3, 2, 1]

# Сортируем числа numbers.sort()

# numbers: [1, 2, 3]

# Разворачиваем список букв letters.reverse()

# letters: [True, 'г', 'ш', 'р', 'м', 'О', 'а', 'К', 'а']

# Меняем местами буквы 'ш' и 'а' letters[2], letters[6] = letters[6], letters[2]

# Изменяем регистр нужных букв letters[1] = letters[1].upper() # 'г' → 'Г' letters[4] = letters[4].upper() # 'м' → 'М' letters[5] = letters[5].lower() # 'О' → 'о' letters[7] = letters[7].lower() # 'К' → 'к'

# Преобразуем числа в их квадраты numbers = [number ** 2 for number in numbers]

# Преобразуем списки в кортежи letters = tuple(letters) numbers = tuple(numbers)

print(letters) print(numbers)

Результат выполнения программы:

Python
(True, 'Г', 'а', 'р', 'М', 'о', 'ш', 'к', 'а')
(1, 4, 9)

При переносе True используется проверка item is True, а не обычное сравнение. Это важно, поскольку в Python логическое значение True считается подклассом целого числа и при сравнении равно числу 1.

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос