List1.py

Disponível somente no TrabalhosFeitos
  • Páginas : 2 (376 palavras )
  • Download(s) : 0
  • Publicado : 20 de novembro de 2012
Ler documento completo
Amostra do texto
#!/usr/bin/python -tt
# Copyright 2010 Google Inc.
# Licensed under the Apache License, Version 2.0
# http://www.apache.org/licenses/LICENSE-2.0

# Google's Python Class
#http://code.google.com/edu/languages/google-python-class/

# A. fim_igual
# Dada uma lista de strings, retorna o número de strings
# com tamanho >= 2 onde o primeiro e o último caracteres são iguais
# Exemplo:['aba', 'xyz', 'aa', 'x', 'bbb'] retorna 3
def fim_igual(words):
cont=0
for c in words:
if len(c)>=2 and c[0]==c[-1]:
cont+=1
return cont

# B. x_antes
# Dada uma lista de stringsretorna uma lista onde
# todos os elementos que começam com x ficam sorteados antes
# Ex.: ['mix', 'xyz', 'apple', 'xanadu', 'aardvark'] retorna
# ['xanadu', 'xyz', 'aardvark', 'apple', 'mix']
#Dica: monte duas listas separadas e junte-as no final
def x_antes(words):
return sorted([c for c in words if c[0]=='x'])+sorted([c for c in words if c[0]!='x'])

def last(a): #esta def serve paraa letra C
return a[-1]

# C. sort_last
# Dada uma lista de tuplas não vazias retorna uma tupla ordenada
# por ordem crescente do último elemento
# Exemplo [(1, 7), (1, 3), (3, 4, 5), (2, 2)]retorna
# [(2, 2), (1, 3), (3, 4, 5), (1, 7)]
# Dica: use key=função que você definiu e que retorna o último elemento
def sort_last(tuples):
return sorted(tuples, key=last)

def test(obtido,esperado):
if obtido == esperado:
prefixo = ' Parabéns!'
else:
prefixo = ' Ainda não'
print ('%s obtido: %s esperado: %s' % (prefixo, repr(obtido), repr(esperado)))

def main():print ('fim_igual')
test(fim_igual(['aba', 'xyz', 'aa', 'x', 'bbb']), 3)
test(fim_igual(['', 'x', 'xy', 'xyx', 'xx']), 2)
test(fim_igual(['aaa', 'be', 'abc', 'hello']), 1)

print ()print ('x_antes')
test(x_antes(['bbb', 'ccc', 'axx', 'xzz', 'xaa']),
['xaa', 'xzz', 'axx', 'bbb', 'ccc'])
test(x_antes(['ccc', 'bbb', 'aaa', 'xcc', 'xaa']),
['xaa', 'xcc',...
tracking img