Solucionado (ver solução)
Solucionado
(ver solução)
6
respostas

Dúvida no Ex. 6 da Aula 6 - Organizando melhor nosso código

Boa noite poderia me ajudar a verificar se á algo de errado com o código , pois não exibe as palavras com acentos.

# -*- coding: UTF-8 -*-

#arquivo app.py
#teste de acentos á

def listar(nomes):
        print (nomes)

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


def menu():
    nomes = []
    escolha = ''
    while (escolha != '0'):
        print ('Digite 1 para cadastrar ou 0 para sair--->')
        escolha = raw_input()

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

        if (escolha == '2'):
            listar(nomes)
menu()
6 respostas

Você está rodando o código pelo console do Python ou executando seu código?

Qual editor de texto você esta usando? Se você é usuário de Windows, não use o bloco de notas, você terá problemas. Use notepadd++ ou sublime2.

Aguardo seu feedback. Pode continuar estudando porque a falta de acento não vai comprometer seus estudos.

Só para deixar claro, se você usa UTF-8 seu arquivo tem que ser gravado em UTF-8. Se for gravado em outra cadeia de caracteres você terá problema. O Notepadd++ no windows permite exibir qual a codificação está sendo usada.

Settings > Preferences > New Document/Default/Directory and set Encoding to UTF-8

Boa Noite

Então Flavio estou usando o Sublime no MAC, tem alguma coisa a ser ajustado nele como vc citou no notepad++ ?

Estou executando meu código : python programa.py

Obrigado

No sublime no Mac? Não precisa fazer nada. Vc criou o arquivo do zero no sublime ou trouxe de outro SO . sublime tá perfeito. Pensei que você usasse Windows porque esse problema e comum nele.

Ola Flavio , obrigado pelo apoio cara. Foi criado direto no Sublime sim, vou fazer um teste criando do zero de novo e posto o resultado aqui blz.

Abraço

Se não der certo vou ver o que posso fazer. Aqui é osx el captain e funciona de boa. Acho que teve outro aluno com esse problema vou dar uma catada no fórum.

solução!

O problema está aqui: def listar(nomes): print (nomes)

Se fizer isso, funciona: def listar(nomes): for nome in nomes: print (nome)

Não sei o motivo, mas quando tentei imprimir a lista "nomes", o assento também não funcionou, mas a string "nome" finciona.