Programação Python (Intermediário) - Prof. MARCO VAZ

MarcoVaz
101.3K views

Open Source Your Knowledge, Become a Contributor

Technology knowledge has to be shared and made accessible for free. Join the movement.

Create Content

Exercitando

Qual das alternativas abaixo é verdadeira com relação aos dicionários em python
Dada a seguinte definição de dicionário: d = {'foo': 100, 'bar': 200, 'baz': 300}, que item representa o acesso ao valor 200 do dicionário
Dada a seguinte definição de dicionário: d = {'foo': 100, 'bar': 200, 'baz': 300}, que comando representa a remoção de todos os itens
Dada a seguinte definição de dicionário tel = {'iphone 3G': 2008, 'iphone 4S': 2011, 'iphone': 2007}, qual o resultado do comando: tel['iphone 3G','iphone']

Exercício 1


Faça um programa para contar e exibir a quantidade e o percentual de cada vogal em uma frase digitada pelo usuário na entrada. Utilize a estrutura de dicionário para armazenar os contadores das vogais. Utilize uma das funções upper() ou lower() para comparação dos caracteres, pois em computação caracteres maiúsculos e minúsculos são diferentes. Na criação do dicionário de vogais, inicialize valor com 0(zero).

Programacao Python
Solução
soma = lambda x: sum([ int(z) for z in x.values() ])

def conta(dic, letra):
    if letra.lower() in dic:
       dic[letra.lower()] += 1
    return dic   
dic = {'a':0, 'e':0, 'i':0, 'o':0, 'u':0}
frase = input('Digite uma frase qualquer:')
for car in frase:
     dic = conta(dic, car)

s = soma(dic)  
print ('vogal      qtd    frequência')
for vog, qtd in dic.items():
    y = int(qtd)/s*100
    print ("  ",vog, ':     ', qtd, '     ', '{0:.2f}'.format(y), '%')

Open Source Your Knowledge: become a Contributor and help others learn. Create New Content