Что выведет этот код?


t = (1, 2, 3)
lst = list(t)
lst[0] = 99
print(lst)

Результат выполнения кода: [99, 2, 3]. Исходный кортеж t преобразуется в список lst, после чего изменяется первый элемент списка. Кортежи неизменяемы, поэтому требуется преобразование в список.

Описание кода:

Этот код демонстрирует разницу между кортежами (tuple) и списками (list) в Python, а также их поведение при изменении.

Разбор кода:

  1. t = (1, 2, 3): Создается кортеж с именем t, содержащий три целочисленных элемента: 1, 2 и 3. Кортежи в Python являются неизменяемыми, то есть их нельзя изменить после создания.
  2. lst = list(t): Кортеж t преобразуется в список с именем lst. Функция list() создает новый список, содержащий элементы кортежа. Списки, в отличие от кортежей, являются изменяемыми.
  3. lst[0] = 99: Первый элемент списка lst (индекс 0) изменяется и получает значение 99. Так как списки изменяемые, это допустимая операция.
  4. print(lst): Список lst выводится на экран.

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

Вывод программы будет следующим:

[99, 2, 3]

Ключевые моменты для собеседования:

  • Неизменяемость кортежей: Важно понимать, что кортежи нельзя изменять после создания. Любая попытка изменить элемент кортежа вызовет ошибку TypeError.
  • Изменяемость списков: Списки, наоборот, можно свободно изменять, добавлять или удалять элементы.
  • Преобразование типов: Умение преобразовывать один тип данных в другой (например, кортеж в список) является важным навыком.
  • Индексация: Важно понимать, что индексация в Python начинается с 0.
0