NEW
Font size
WorksheetsQuiz sobre Ordenação em Python
Total questions: 20
Worksheet time: 10mins
Qual é a principal diferença entre o método list.sort() e a função sorted() em Python?
list.sort() funciona apenas com listas de números, enquanto sorted() aceita qualquer tipo de dado.
list.sort() retorna uma nova lista ordenada, enquanto sorted() ordena a lista no local.
sorted() retorna uma nova lista ordenada, enquanto list.sort() ordena a lista no local e retorna None.
A função sorted() é mais rápida para listas grandes do que list.sort().
O que o parâmetro reverse=True faz ao ser usado em uma função de ordenação como sorted()?
Ele ordena os elementos de forma aleatória.
Ele ordena os elementos em ordem crescente (do menor para o maior).
Ele reverte a lista sem ordená-la.
Ele ordena os elementos em ordem decrescente (do maior para o menor).
Para ordenar uma lista de tuplas com base no segundo elemento, qual parâmetro você usaria?
order
index
key
field
Qual é a principal função de uma 'lambda' ao ser usada como o argumento key em uma ordenação?
Para criar uma função nomeada e reutilizável.
Para ordenar os elementos em ordem decrescente.
Para definir uma função simples e anônima que especifica o critério de ordenação.
Para transformar todos os elementos da lista em strings.
Qual seria o resultado de sorted(lista, key=lambda x: x[1]) para a lista [('maçã', 2), ('banana', 1), ('abacaxi', 3)]?
[('maçã', 2), ('banana', 1), ('abacaxi', 3)]
[('abacaxi', 3), ('maçã', 2), ('banana', 1)]
[('banana', 1), ('maçã', 2), ('abacaxi', 3)]
[('abacaxi', 3), ('banana', 1), ('maçã', 2)]
Qual método ou função você usaria para ordenar uma lista de strings de forma que '10' viesse depois de '2'?
sorted(lista, key=int)
lista.sort()
sorted(lista, key=str)
reversed(lista)
Qual é a principal característica de um algoritmo de ordenação 'estável'?
Ele tem um desempenho O(n logn).
Ele ordena os elementos em ordem decrescente.
Ele preserva a ordem relativa de elementos que possuem chaves de ordenação iguais.
Ele sempre ordena a lista no local, sem criar uma cópia.
O que acontece se você tentar ordenar uma lista que contém elementos de tipos de dados incompatíveis, como [1, '2', 3]?
O Python ignora os elementos incompatíveis e ordena apenas os compatíveis.
A lista é ordenada com os elementos de string vindo primeiro.
O Python levantará um erro do tipo TypeError.
O Python converterá automaticamente todos os elementos para strings.
Qual dos métodos de ordenação do Python é considerado um algoritmo de ordenação estável?
Apenas list.sort()
Apenas sorted()
Ambos, list.sort() e sorted()
Nenhum dos dois, pois a estabilidade não é garantida no Python.
Considere a classe Pessoa com os atributos nome e idade. Como você ordenaria uma lista de objetos Pessoa por idade, do mais novo para o mais velho?
sorted(lista_pessoas, key=Pessoa.idade)
sorted(lista_pessoas, key=lambda p: p.idade)
lista_pessoas.sort(key=idade)
sorted(lista_pessoas, key='idade')
Qual é o comportamento padrão das funções de ordenação em Python para ordenar uma lista de strings?
Ordenação numérica.
Ordenação com base no tamanho das strings.
Ordenação lexicográfica (alfabética).
A ordenação padrão é aleatória.
Se a ordenação padrão de uma lista de strings for ['uva', 'abacate', 'banana'], qual seria o resultado de sorted(lista, key=len)?
['uva', 'abacate', 'banana']
['uva', 'banana', 'abacate']
['abacate', 'banana', 'uva']
['banana', 'abacate', 'uva']
Ao usar list.sort() para ordenar uma lista de tuplas, como [('c', 3), ('a', 1), ('b', 2)], qual será o resultado?
[('a', 1), ('b', 2), ('c', 3)]
[('c', 3), ('a', 1), ('b', 2)]
[('b', 2), ('a', 1), ('c', 3)]
[('a', 1), ('c', 3), ('b', 2)]
Qual dos métodos abaixo é o mais eficiente para reverter a ordem de uma lista que já está ordenada, sem precisar ordená-la novamente?
sorted(lista, reverse=True)
list.reverse()
lista.sort(reverse=True)
lista[::-1]
Qual é a principal desvantagem do método list.sort()?
Ele não aceita o parâmetro key.
Ele só funciona com listas de números.
Ele modifica a lista original, perdendo a ordem inicial.
Ele não é estável.
Qual dos seguintes exemplos irá ordenar uma lista de strings ignorando a diferença entre maiúsculas e minúsculas?
lista.sort()
sorted(lista, key=str.lower)
sorted(lista, case_sensitive=False)
sorted(lista, key=lambda s: s.upper)
O que o método __lt__ (less than) faz em um objeto personalizado?
Ele define como o objeto será impresso na tela.
Ele define como o objeto se compara com outro objeto, permitindo que ele seja ordenado.
Ele define a forma como o objeto é criado.
Ele define como o objeto será copiado.
Qual é o método mágico do Python utilizado para comparação de objetos, permitindo que o Python saiba como um objeto deve ser comparado a outro (por exemplo, obj1 < obj2)?
__eq__
__lt__
__gt__
__cmp__
Qual é o resultado de sorted(['casa', 'carro', 'banana'])?
['banana', 'casa', 'carro']
['carro', 'casa', 'banana']
['casa', 'carro', 'banana']
['banana', 'carro', 'casa']
Por que a string 'banana' aparece antes de 'casa' e 'carro' na ordenação padrão de strings em Python?
Porque 'banana' é mais curta
Porque a ordenação padrão é lexicográfica (alfabética)
Porque 'banana' tem mais vogais
Porque 'banana' é uma palavra reservada
