Função de saque com erro de tipo | Fórum | School of Net

Deseja poder participar de nosso fórum e tirar todas as suas dúvidas?
Clique aqui e assine nosso plano de acesso ilimitado. Saiba mais.

por Yuri

8 meses atrás Yuri

Função de saque com erro de tipo

Estava tentando separar o máximo as funções e aquivos, criei como no curso um arquivo com as variáveis. ``` python accounts_list = { '123456': { 'passwd': '123456', 'name': 'Teste V.', 'balance': 1230 } } ``` e o aquivo com a função de saque ```python def withdrawal(account): value = float(input("Digite o valor do saque: ")) if value < 0: print("Verifique o valor digitado") return if dbase.accounts_list[account]['balance'] > value: dbase.accounts_list[account]['balance'] -= value print("Seu saldo agora e de R$ %f" % dbase.accounts_list[account]['balance']) else: print("Saldo insulficiente") ``` Porém quando executo a função sempre recebo o mesmo retorno: ``` TypeError: unhashable type: 'dict' ``` Tentei imprimir o dicionário dentro da função destas formas: ```python print(dbase.accounts_list.get(account)) # e tambem print(dbase.accounts_list[account]) ``` Mas sempre recebo o mesmo retorno, exceto se colocar a chave diretamente: ```python print(dbase.accounts_list['123456']) ``` Sabem dizer se exite alguma limitação em colocar uma variável para chamar o dicionário ou estou errando em algum lugar?

1 Respostas