FC ConcursosFC Concursos

Flashcard FC696554

Por que um parâmetro padrão mutável em Python retém alterações entre chamadas?

Linguagens de Programação para Ciência de Dados

QUADRIX · 2025

De acordo com o assunto TI Ciência de Dados e Inteligência Artificial: Linguagens de Programação para Ciência de Dados, responda:

Por que um parâmetro padrão mutável em Python retém alterações entre chamadas?
Mostrar resposta e comentário

Resposta

A execução imprime ['X'] ['X', 'Y'] ['X', 'Y', 'Z'] porque o valor padrão [] é criado uma única vez na definição da função, sendo avaliado uma única vez e reutilizado em chamadas subsequentes, acumulando os elementos adicionados.

Para obter uma lista nova a cada chamada use um sentinel, por exemplo: def adicionar_item(item, lista=None): if lista is None: lista=[].




Veja como foi cobrado:
https://flashcardsconcursos.com.br/portal/flashcard/688356

Conteúdo do catálogo FC Concursos · Atualizado em

Continue aprendendo