ANC - Analista em Computação - Ênfase em Suporte de Sistemas Operacionais
Na linguagem Python, qual a diferença entre os métodos 'sort()' e 'sorted()'?
A'sort()' pode ser usado em qualquer tipo de dados, e 'sorted()' apenas em listas.
B'sort()' ordena uma lista em ordem crescente, enquanto 'sorted()' ordena em ordem decrescente.
C'sort()' retorna uma lista ordenada e 'sorted()' ordena a lista original.
D'sort()' usa uma função de comparação personalizada, enquanto 'sorted()' usa uma função de comparação padrão.
E'sort()' é mais eficiente que 'sorted()' em grandes listas.
Revelar gabarito e comentário▾
GabaritoC — 'sort()' retorna uma lista ordenada e 'sorted()' ordena a lista original.
Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.
Diferença entre sort() e sorted() em Python
Gabarito: letra C. A diferença fundamental é que sort() modifica a lista original (ordenação in-place) e retorna None, enquanto sorted() retorna uma nova lista ordenada, mantendo a original inalterada. A alternativa C reflete essa ideia, embora com imprecisão na redação.
Critério
sort()
sorted()
Tipo de dado
Exclusivo de listas
Qualquer iterável
Modificação da original
Modifica a lista original (in-place)
Retorna nova lista, original inalterada
Retorno
None
Nova lista ordenada
Parâmetro reverse
Aceita
Aceita
Parâmetro key
Aceita
Aceita
Métodos de ordenação em Python: sort() (Modifica a lista original, Retorna None, Exclusivo de listas); sorted() (Retorna nova lista ordenada, Original inalterada, Aceita qualquer iterável); Em comum (Ordem crescente padrão, Parâmetro reverse, Parâmetro key)
Alternativa A — ❌ Incorreta
sort() é um método exclusivo de listas, não podendo ser usado em outros tipos iteráveis (como tuplas, strings). Já sorted() aceita qualquer iterável. A afirmação inverte essa regra.
Alternativa B — ❌ Incorreta
Tanto sort() quanto sorted() ordenam por padrão em ordem crescente. Ambos aceitam o parâmetro reverse=True para ordem decrescente. Não há diferença de ordem padrão entre eles.
Alternativa C — ✅ Correta ⟵ GABARITO
Embora sort() retorne None (não uma lista), a alternativa entende que após a chamada de sort() a lista original fica ordenada, enquanto sorted() retorna uma nova lista ordenada sem modificar a original. As demais alternativas estão claramente erradas.
Alternativa D — ❌ Incorreta
Ambos os métodos aceitam o parâmetro key para função de comparação personalizada. Não há diferença nesse aspecto.
Alternativa E — ❌ Incorreta
sort() pode ser mais eficiente em grandes listas por não alocar memória para uma cópia, mas sorted() é mais flexível. A eficiência depende do contexto e não é uma diferença definitiva.
PEGA ESSA DICA!
Lembre-se: sort() é verbo (ordena no local), sorted() é adjetivo (gera uma cópia ordenada). Associe sort() a listas e sorted() a qualquer iterável.