1
resposta

TypeError: 'int' object is not subscriptable

def cria_conta(numero, titular, saldo, limite):
    conta = {"numero": numero, "titular": titular, "saldo": saldo, "limite": limite}
    return conta

def deposita(conta, valor):
    conta["saldo"] += valor

def saca(conta, valor):
    conta["saldo"] -= valor

def extrato(conta):
    print("Saldo {}".format(conta["saldo"]))

cria_conta(123, "Joao", 55.0, 1000.0)
deposita(123, 50)
extrato(123)

TypeError: 'int' object is not subscriptable

Alguém conseguiu contornar esse Erro?

1 resposta

Opa Marcos, beleza?

NEsse caso quando você chama a função cria_conta você precisaria salvar ela em uma variável para poder utilizar ela depois, se não ela não ficaria armazenada em lugar algum

Adicionei a variavel "nova_conta" e funcionou, segue código abaixo:

def cria_conta(numero, titular, saldo, limite):
    conta = {"numero": numero, "titular": titular, "saldo": saldo, "limite": limite}
    return conta


def deposita(conta, valor):
    conta["saldo"] += valor


def saca(conta, valor):
    conta["saldo"] -= valor


def extrato(conta):
    print("Saldo {}".format(conta["saldo"]))


nova_conta = cria_conta(123, "Joao", 55.0, 1000.0)
deposita(nova_conta, 50)
extrato(nova_conta)


#Saida:
#Saldo 105.0

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software