>>> a = "This is a test string from Andrew".split()
>>> a
>>> ['This', 'is', 'a', 'test', 'string', 'from', 'Andrew']
Agora partimos pra dica
a.sort(key=len)
Também é possível ordenar as letras desconsiderando maiúsculas e minúsculas
a.sort(key=str.lower)
Neste último caso nem o tamanho nem a quantidade de caracteres não contam e sim a ordem dentro da tabela de caracteres
O Rodrigo Hübner postou esta dica - Show de bola!
>>> print sorted("This is a test string from Andrew".split(), key=len)
['a', 'is', 'This', 'test', 'from', 'string', 'Andrew']
No exemplo acima o python ordena as palavras pelo tamanho, para exibir apenas a maior
>>> print sorted("This is a test string from Andrew".split(), key=len)[-1]
['a', 'is', 'This', 'test', 'from', 'string', 'Andrew']
Abaixo apenas a maior palavra
max('lista de palavras'.split(),key=len)
Só falta resolver um problema, se duas palavras tiver o mesmo tamanho e forem as maiores
Coisas legais de python... Podemos fazer assim também usando um pouco o conceito de linguagens funcionais:
ResponderExcluir>>> print sorted("This is a test string from Andrew".split(), key=len)
['a', 'is', 'This', 'test', 'from', 'string', 'Andrew']