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

execução do app.py (python)

Ola,

Fiz o código idêntico ao do instrutor, mas ocorre um erro abaixo. fiz identação, mas não entendi o motivo de acontece isso:

Traceback (most recent call last): File "", line 1, in NameError: name 'app' is not defined

Salvei na pasta como app.py, e também no terminal entrei na pasta onde ele se encontra conforme aprendemos no decorrer do curso. Se possível me retorne

9 respostas

Olá Osvaldo,

Não fiz esse curso, mas posso tentar ajudar. Tem como enviar o código usado para o teste e qual comando você usou para rodar?

Qual é o seu sistema operacional? Windows ou Unix?

Att.

-- coding: UTF-8 --

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, 2 para listar, 0 para terminar' escolha = raw_input()

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

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

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

menu()

no console coloquei app.py. Salvei esse código como app.py

mesmo problema amigo , conseguiu resolver?

Olá,

Testei o código a seguir e tudo ocorreu como esperado:

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


def menu():
    nomes = []
    escolha = ''
    while (escolha != '0'):
        print('Digite: 1 para cadastrar, 2 para listar, 0 para terminar')
        escolha = input()
        if (escolha == '1'): cadastrar(nomes)
        if (escolha == '2'): listar(nomes)


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


menu()

Verifiquem se o código está igual ao de vocês. E por favor, utilizem o botão de inserir código logo acima para melhor entendimento.

era um problema na hora de chamar o arquivo no python eu estava chamando o python e em seguida o arquivo e não os dois ao mesmo tempo

o erro esta na linha 1. Segue o codigo correto da linha

# -*- coding: utf-8 -*-

No vídeo o instrutor usa o UTF em caixa alta, isso é que está dando esse problema. Pelo menos no meu era a causa.

Pessoal,

Também estou com problemas no arquivo app.py, vocês podem verificar, por favor?

# -*- coding: utf-8 -*-
def cadastrar(nomes):
    print 'Digite o nome:'
    nome = raw_input()
    nomes.append(nome)

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

def remover(nomes):
    print 'Qual nome você gostaria de remover?'    
    nome = raw_input()
    nomes.remove(nome)

def alterar(nomes):
    print 'Qual nome vc gostaria de alterar?'
    #cliente deve digitar o nome a alterar
    nome = raw_input()
    i = nomes.index(nome)

    #devemos verificar se existe esse nome na lista
    #se existir o cliente deve digitar o novo nome
    #devemos pegar a posição do nome a alterar na lista
    #e colocar na posição correta o novo nome
    if (i is not null):
        print 'Qual é o novo nome?'
        nome = raw_input()
        nomes[i] = nome
    else: print 'Não há este nome na lista'


def menu():
    nomes = [] #nao podemos esquecer de inicializar a lista
    escolha = ''
    while(escolha != '0'):    
        print 'Digite: 1 para cadastrar, 2 para listar, 3 para remover, 0 para terminar'
        escolha = raw_input()
        if(escolha == '1'): cadastrar(nomes)
        if(escolha == '2'): listar(nomes)
        if(escolha == '3'): remover(nomes)


menu()

Está ocorrendo o erro

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "app.py", line 40
    if(escolha == '1'): cadastrar(nomes)
    ^
IndentationError: unexpected indent

Obrigada!

solução!

Camila, o seu problema está na identação nos últimos 'IFs' Deveriam estar assim:

def menu():
    nomes = [] #nao podemos esquecer de inicializar a lista
    escolha = ''
    while(escolha != '0'):    
        print 'Digite: 1 para cadastrar, 2 para listar, 3 para remover, 0 para terminar'
        escolha = raw_input()
        if(escolha == '1'): 
            cadastrar(nomes)
        if(escolha == '2'): 
            listar(nomes)
        if(escolha == '3'): 
            remover(nomes

Qual o comando para abrir a pasta que contem as def e fazer o programa rodar? Eu tenho q chamar essa pasta no Cmd ou no shell? Nao ficou muito claro pra mim!