Olá Nargylla, tudo bem com você?
O comportamento que você observou está correto e é o esperado.
A lista cardapio é uma lista de tuplas. As tuplas são estruturas de dados imutáveis, ou seja, uma vez criadas, não podemos alterar seus elementos. No entanto, a lista é uma estrutura de dados mutável, o que significa que podemos alterar seus elementos.
No seu código, você não está modificando a tupla em si, mas sim substituindo uma tupla por outra na lista. Veja:
cardapio = [('Frango grelhado:', 49.00), ('Coxinha:', 2.50), ('Panqueca de carne:', 16.00)]
Aqui, cardapio[2] se refere à tupla ('Panqueca de carne:', 16.00). Quando você executa o seguinte comando:
cardapio[2] = ("Paqueca de frango:", 13.00)
Você está substituindo a tupla ('Panqueca de carne:', 16.00) pela tupla ("Paqueca de frango:", 13.00) na lista.
A tupla original ('Panqueca de carne:', 16.00) não foi modificada, mas sim substituída na lista.
Conte com o apoio do Fórum na sua jornada. Espero ter ajudado. Fico à disposição. Abraços e bons estudos!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!