2020
Dicionários são estruturas de dados que associam uma chave com um valor.
Os valores podem ser um dado de qualquer tipo, mas as chaves só podem ser dados de tipos imutáveis.
As chaves precisam ser únicas.
Veja um exemplo de criação de dicionário:
>>> dd={"Jose":12345678, "maria": 78765432}
>>> type(dd)
<class 'dict'>
>>> print(dd)
O dicionário acima pode representar uma agenda de telefones, com o nome (uma string, que é imutável) como chave e o valor associado a cada chave é o telefone (um inteiro).
Acessar o valor associado à uma chave é feito como no exemplo:
>>> dd["maria"]
78765432
O valor associado à uma chave pode ser modificado, ou uma nova chave (e seu valor) podem ser incluídos no dicionário.
>>> dd={"Jose":12345678, "maria": 78765432}
>>> dd
{'maria': 78765432, 'Jose': 12345678}
>>> dd['maria'] = 777777
>>> dd['carlos'] = 888888
>>> dd
{'carlos': 888888, 'maria': 777777, 'Jose': 12345678}
>>>
A ordem dos pares chave/valor no dicionário é arbitrária
>>> dd['ana']=999999
>>> dd
{'carlos': 888888, 'maria': 777777, 'Jose': 12345678, 'ana': 999999}
>>>
O laço for aplicado a um dicionário faz a variável do laço passar por todas as chaves do dicionário (na ordem interna).
>>> for x in dd:
... print(x)
...
carlos
maria
Jose
ana
O operador in verifica se uma chave está no dicionário.
>>> 'ana' in dd
True
>>> 'Ana' in dd
False
Acessar uma chave que não existe causa erro de execução.
>>> dd['zico']
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
KeyError: 'zico'
O método items retorna uma lista implicita de tuplas dos pares chave/valor .
>>> dd.items()
dict_items([('ana', 333444555), ('maria', 77777777), ('Jose', 12345678),
('carlos', 1112223334)])
for nome,tel in dd.items():
print(f'Nome: {nome} tel: {tel}')
from collections import Counter
conta = Counter(lista)
dd = {"ana": (1234567, "rua otaviano figueira 44", [7, 4, 2.3, 7]),
"pedro": (.....)
}
Associa o RA, endereco e notas nas disciplinas ao identificador (nome) “ana”
dd = {"ana": {"ra":1234567,
"endereco": "rua otaviano figueira 44",
"notas": [7, 4, 2.3, 7]},
"pedro": { "ra": 456789, ...
}
isso so faz sentido se os campos não sao iguais para cada pessoa.
import matplotlib.pyplot as plt
from collections import Counter
def plot_frequency(string):
# Convertendo todas as letras para minúsculas para evitar diferenciação entre maiúsculas e minúsculas
string = string.lower()
# Contando a frequência das letras na string
letter_counts = Counter(string)
# Obtendo as letras e suas contagens
letters = list(letter_counts.keys())
counts = list(letter_counts.values())
# Plotando o gráfico de barras
plt.bar(letters, counts)
plt.xlabel('Letras')
plt.ylabel('Frequência')
plt.title('Frequência de Letras')
plt.show()
# Exemplo de uso
texto = "Lorem ipsum dolor sit amet, consectetur adipiscing elit."
plot_frequency(texto)
import matplotlib.pyplot as plt
from collections import Counter
def plot_frequency(string):
# Convertendo todas as letras para minúsculas para evitar diferenciação entre maiúsculas e minúsculas
string = string.lower()
# Contando a frequência das letras na string
letter_counts = Counter(string)
# Ordenando as letras pela frequência (mais frequente para menos frequente)
sorted_letter_counts = sorted(letter_counts.items(), key=lambda x: x[1], reverse=True)
# Separando as letras e suas contagens ordenadas
letters = [item[0] for item in sorted_letter_counts]
counts = [item[1] for item in sorted_letter_counts]
# Plotando o gráfico de barras
plt.bar(letters, counts)
plt.xlabel('Letras')
plt.ylabel('Frequência')
plt.title('Frequência de Letras (Ordenado)')
plt.show()
# Exemplo de uso
texto = "Lorem ipsum dolor sit amet, consectetur adipiscing elit."
plot_frequency(texto)
import matplotlib.pyplot as plt
from collections import Counter
import string
def plot_frequency(string):
# Convertendo todas as letras para minúsculas para evitar diferenciação entre maiúsculas e minúsculas
string = string.lower()
# Removendo espaços em branco e pontuações da string
string = string.translate(str.maketrans('', '', string.punctuation + string.whitespace))
# Contando a frequência das letras na string
letter_counts = Counter(string)
# Ordenando as letras pela frequência (mais frequente para menos frequente)
sorted_letter_counts = sorted(letter_counts.items(), key=lambda x: x[1], reverse=True)
# Separando as letras e suas contagens ordenadas
letters = [item[0] for item in sorted_letter_counts]
counts = [item[1] for item in sorted_letter_counts]
# Plotando o gráfico de barras
plt.bar(letters, counts)
plt.xlabel('Letras')
plt.ylabel('Frequência')
plt.title('Frequência de Letras (Ordenado)')
plt.show()
# Exemplo de uso
texto = "Lorem ipsum dolor sit amet, consectetur adipiscing elit."
plot_frequency(texto)
import matplotlib.pyplot as plt
from collections import Counter
import string
def plot_frequency(texto):
# Convertendo todas as letras para minúsculas para evitar diferenciação entre maiúsculas e minúsculas
texto = texto.lower()
# Removendo espaços em branco e pontuações da string
texto = texto.translate(str.maketrans('', '', string.punctuation + string.whitespace))
# Contando a frequência das letras na string
letter_counts = Counter(texto)
# Ordenando as letras pela frequência (mais frequente para menos frequente)
sorted_letter_counts = sorted(letter_counts.items(), key=lambda x: x[1], reverse=True)
# Separando as letras e suas contagens ordenadas
letters = [item[0] for item in sorted_letter_counts]
counts = [item[1] for item in sorted_letter_counts]
# Plotando o gráfico de barras
plt.bar(letters, counts)
plt.xlabel('Letras')
plt.ylabel('Frequência')
plt.title('Frequência de Letras (Ordenado)')
plt.show()
# Exemplo de uso
texto = "Lorem ipsum dolor sit amet, consectetur adipiscing elit."
plot_frequency(texto)