(Q78) Em Python, listas são estruturas de dados imutáveis, o que as torna ideais para serem usadas como chaves de dicionários (dict).
A
Certo
B
Errado
Correct
Official Explanation / Community Explanations
A afirmação está incorreta por dois motivos fundamentais que se complementam no funcionamento da linguagem Python:
Listas são Mutáveis: Em Python, as listas (list) são estruturas de dados mutáveis. Isso significa que podemos alterar, adicionar ou remover elementos de uma lista após a sua criação, sem a necessidade de criar um novo objeto na memória.
Requisitos para Chaves de Dicionários: Para que um objeto possa ser utilizado como chave em um dicionário (dict), ele deve ser imutável e hashável (ou seja, possuir um valor de hash que nunca muda durante sua vida útil, implementando o método __hash__). O Python exige isso porque os dicionários utilizam tabelas hash para indexar e buscar valores rapidamente. Se as chaves fossem mutáveis, o seu valor de hash poderia mudar, tornando impossível localizar o valor associado a ela posteriormente.
Se você tentar utilizar uma lista como chave de um dicionário, o Python retornará um erro do tipo: TypeError: unhashable type: 'list'
Alternativa Correta: Se o objetivo for utilizar uma sequência de elementos como chave de um dicionário, deve-se utilizar uma tupla (tuple), que é uma estrutura de dados imutável em Python.