5
respostas

Função append não funciona . Quando eu executo, aparece apenas o primeiro nome cadastrado, os demais não são exibidos.

# -*- coding: UTF-8 -*-
#arquivo app.py
#teste de acentos

def cadastrar(nomes):
    print('Digite o nome:')
    nome = input()
    nomes.append(nome)

def listar(nomes):
    print('Listando nomes:')
    for nome in nomes:
        print(nome)

def remover(nomes):
    print('Qual nome você deseja remover?')
    nome = input()
    nomes.remove(nome)

def menu():
    nomes = []
    escolha = ''
    while (escolha != '0'):
        print('Digite 1 para cadastrar, 0 para terminar, 2 para listar ou 3 para remover um nome.')
        escolha = input()

        if (escolha == '1'):
            cadastrar(nomes)

        if (escolha == '2'):
            listar(nomes)

        if (escolha == '3'):
            remover(nomes)

menu()
5 respostas

Oi Wandrieli tudo bem?

Eu rodei nesse site e funcionou https://repl.it/repls/SubduedPopularSystemsanalysis

Será que não é algum problema do seu compilador? Qual versão do compilador está usando ? Está usando alguma IDE para rodar ou está rodando pelo terminal mesmo?

Olá, neste site realmente funcionou, mas estou usando a IDE PyCharm e não funciona corretamente. Roda, porém a função append não funciona, pois ao apresentar os dados, apenas o primeiro é listado.

Vou tentar simular o seu cenário, qual é a versão da IDE PyCharm que está usando?

Versão: 2018 3.3 x64

Simulei o cenário e rodou normalmente:

https://i.imgur.com/QM8KNeY.png

Consegue tirar um print parecido com o meu para ver se encontro alguma pista do que pode estar acontecendo?

Consegue verificar também se seu Windows é 64 bits , e qual Windows está usando.

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