Listas são mutáveis – podemos alterar seus elementos com l[1] = 100. O Python fornece uma alternativa às listas – a tuple, que garante que os elementos individuais não vão mudar. Ela é usada principalmente para conjuntos de informações muito relacionadas, de modo que quando um elemento é atualizado, toda a informação é alterada e, portanto, toda a tuple deve ser atualizada.
Note que a única diferença aqui é que usamos parênteses () em vez de colchetes [] como fazemos para listas. Poderíamos até mesmo omitir os parênteses e usar apenas box = 20, 30, 50, o que resultaria exatamente na mesma tuple.
As tuples não são modificáveis. Elas não têm um método append ou add para adicionar elementos. Se tentarmos alterar a altura da caixa, precisamos mudar toda a tuple:
box = (20, 30, 50)
box[0] = 10 # TypeError: 'tuple' object does not support item assignment
box = (10, 30, 50) # OK
box = 10, 30, 50 # OK
Há também uma maneira fácil de desempacotar os elementos da tuple:
Você sabia que pode ler múltiplas entradas com uma única linha de código?
name, height = input(), int(input())
Isso é possível graças às tuples e ao desempacotamento de valores.
Você foi solicitado a ler os registros de n pacientes e informar suas estatísticas. Desta vez, os registros incluem seus nomes e o peso de cada paciente. Você deve relatar a média de todos os pacientes e, para cada paciente, quanto acima ou abaixo da média eles estão.
A primeira linha da entrada contém um único inteiro n – o número de pacientes. As próximas linhas contêm o nome do paciente seguido por seu peso na próxima linha.
O programa deve primeiro imprimir o peso médio e, em seguida, os nomes dos pacientes, seguidos por dois pontos, e X above average se o peso estiver acima ou igual à média, e X below average se estiver abaixo.
Entrada
Saída
3
Anna
50
Bob
80
Simon
71
67
Anna: 17 below average
Bob: 13 above average
Simon: 4 above average