I am not able to call a function in python

1

Hello. My problem is this:

def arranque():
machine = raw_input("Bem vindo à màquina virtual(VM). Prima ENTER para iniciar o SO ou prima B para entrar no menu da BIOS.")
if machine == "B".upper():
    print "A iniciar a BIOS..." 
for i in range(1000):
    print "..."
arranque()
# else:
    #storm()

def bios(): 
    print "------------------ \n" 
    print "BIOS setup utility \n"
    print "------------------"
    opcao =raw_input("Está no menu da BIOS. Escolha o que pretende aceder: Informações do sistema, Data, Avançadas, Configurações do SO (escreva quit para voltar ao menu e back se quiser voltar ao menu principal da BIOS) \n")
    if opcao == "Informações do sistema":
        print "--------------" 
        print "Maquina virtual"
        print "--------------" 
        print "Versão: 1.0v 32bit \n Data da criação: 07/06/14 \n Compatível com Windows XP, Windows Vista, Windows 7, Windows 8, Unix, Linux, Ubuntu e Mac OS"
        print "Todos os direitos reservados © 2014"
        rebobinar = raw_input("")
        if rebobinar == "back":
            bios()
    elif opcao == "Data":
        print "--------------"
        print "Data"
        print "--------------"
        print "Sistema Operativo(simulado): BITsky one® \nInterface: Literal (e GUI nas próximas atualizações) \nLinguagem de programação predefinida: Python"
        import win32api
        path = "C:/"
        info = win32api.GetVolumeInformation(path)
        print( "Número da série do disco rígido: = %d" % info[1] )
        rebobinar = raw_input("")
        if rebobinar == "back":
            bios()
    elif opcao == "Avançadas":
        print "--------------"
        print "Avançadas"
        print "--------------"
        configurar = raw_input("Para configurar as defenições da máquina virtual, escreva a password bitwise para aceder: \n")
        if configurar == "0b10b100b110b100":
            print "As opções disponíveis são: \nAlterar a forma de inicialização, \nDesinstalar SO, \nCriar permissões especiais para a VM, \nVer código fonte da VM"
            avanced = raw_input("")
            if avanced == "Alterar a forma de inicialização":
                alterar = raw_input("O que deseja alterar: \nApresentação inicial da VM, \nApresentar código de arranque, \nEditar código(aviso: qualquer alteração incorreta destes pode instabilizar a VM)?")     
                if alterar == "Apresentação inicial da VM":
                    editor()

bios()


#funções auxiliares da opção editar texto:
#função 1 -> ligada á função externa bios(): 
def editor():
    global texto
    texto = raw_input("digite o texto que quer que o menu principal imprima:")
 editor()

And I get this error:

  

Traceback (most recent call last): File "C: \ Documents and Settings   Settings \ Cristina \ Desktop \ virtual machine 1st version.py ",   line 50, in bios () File "C: \ Documents and Settings \   Settings \ Cristina \ Desktop \ virtual machine 1st version.py ",   line 48, in bios editor () NameError: global name 'editor' is not   defined

Where is the error?

    
asked by anonymous 11.06.2014 / 02:06

1 answer

1

Its function editor was set after calling bios . Try to set it before bios , since this function uses editor .

    
11.06.2014 / 02:22