Копирование кортежа в Python
Чтобы скопировать кортеж, необходимо указать срез, включающий все исходные элементы кортежа без указания первого и последнего индекса [:].
# Текущий кортеж
numbers = (50, 100, 150, 200)
# Создаём новый кортеж и создаём срез для копирования старого кортежа
new_numbers = numbers[:]
# Выводим старый кортеж
print("Это старый кортеж:")
print(numbers)
# Выводим новый кортеж
print("\nЭто новый кортеж:")
print(new_numbers)
# Финальный результат в консоли
Это старый кортеж:
(50, 100, 150, 200)
Это новый кортеж:
(50, 100, 150, 200)
Добавляем проверку :
im = id(numbers)
inm = id(new_numbers)
eq = inm == im
Получаем :
Tuple Test :
Это старый кортеж:
(50, 100, 150, 200)
Это новый кортеж:
(50, 100, 150, 200)
Однако ;
numbers ID : 139761481010528
new_numbers ID : 139761481010528 test EQ : ( inm == im ) = True
new_numbers — не копия, а ссылка на исходный кортеж !
Спасибо за обратную связь)