How do I make some command to go from one option panel to another in python

0

Type I was doing a business that had a panel of options that you choose the number and then it goes and runs type

Fazer oque:
1: ir ao mercado
2: ficar em casa
1 (pra ir ao mercado)

Give after I chose to go to the market

Você foi ao mercado com 5 reais no bolso.
1: comprar algo
2: voltar pra casa
2
#comando pra voltar pra casa é executado

How do I make the command to go back home, and then run all the options of home and etc again? Has as? (I'm new to python so say it in a way that I understand)

Code:

    # INICIO DO GAME
import time

time.sleep(3)
dinheiro = 5
acao1 = int(input('\nVocê está em casa. Escolha oque fazer: '
                  '\n1: Ir ao mercado '
                  '\n2: Dispensar o personal trainer e terminar '
                  '\n3: Praticar exercícios'
                  '\n4: Ir ao trabalho\n'))
if acao1 == 1:
    acao_mercado = int(input(
        'Você foi ao mercado com {0} reais no bolso'
        '\n1: Comprar algo'
        '\n2: Voltar pra casa'
        '\n'.format(str(dinheiro))))
    if acao_mercado == 1:
        acao_compra = int(input('Você foi ver oque tem para comprar'
              '\nVai comprar oque?'
              '\n1: Ovo R$2'
              '\n2: Leite R$3'
              '\n3: Banana R$1'
              '\n4: Trigo 1kg R$3'
              '\n5: Margarina R$5'
              '\n6: Açucar 1kg R$3'
              '\n7: Sair do mercado'))
        if acao_compra == 1 and dinheiro >= 2:
            dinheiro = dinheiro - 2
            print('Você comprou um ovo por 2 reais')
            #comando pra voltar pra compra de coisas
        if acao_compra == 2 and dinheiro >= 3:
            dinheiro = dinheiro - 3
            print('Você comprou um leite por 3 reais')
            # comando pra voltar pra compra de coisas
        if acao_compra == 3 and dinheiro >= 1:
            dinheiro = dinheiro - 1
            print('Você comprou uma banana por 1 real')
            # comando pra voltar pra compra de coisas
        if acao_compra == 4 and dinheiro >= 3:
            dinheiro = dinheiro - 3
            print('Você comprou um pacote de trigo por 3 reais')
            # comando pra voltar pra compra de coisas
        if acao_compra == 5 and dinheiro >= 5:
            dinheiro = dinheiro - 5
            print('Você comprou uma margarina por 5 reais')
            # comando pra voltar pra compra de coisas
        if acao_compra == 6 and dinheiro >= 3:
            dinheiro = dinheiro - 3
            print('Você ocmprou um pacote de açucar por 3 reais')
            # comando pra voltar pra compra de coisas
        if acao_compra == 7:
            #comando pra sair do mercado
    #if acao_mercado == 2:
        #comando para voltar pra casa
    
asked by anonymous 09.12.2018 / 20:20

2 answers

0

I wrote a fairly simple code, just to be able to show you an idea of implementation using functions. Notice that I am using the while block inside the functions to keep asking the option and not leaving the function immediately. You can try to implement this without while and see the result (without the while the code only runs once). I have not put any kind of security check to catch exceptions if the user enters a letter instead of a number, it's really quite simple. main () is the main function of your program.

dinheiro = 5
# Função chamada quando você entra no mercado
def mercado():
    print('Você foi ao mercado com {} reais no bolso'.format(dinheiro))
    while True:
        acao = int(input('O que você deseja?\n'
        '1: Comprar algo\n'
        '2: Voltar para casa'))
        if acao == 1:
            ver_produtos()
        elif acao == 2:
            return   # Aqui volta para a função anterior.
# Esta função mostra os produtos que você pode comprar
def ver_produtos():
    while True:
        acao = int(input('O que quer comprar?\n'
        '1: Ovo R$2\n'
        'Pode colocar outros produtos aqui...\n'
        '7: Sair do mercado'))
        if acao == 1:
            print('Implemente isso aqui')
        elif acao == 7:
            return   # Volta para a função do mercado.
        else:
            print('Esse produto está em falta!')
# Função chamada na opção 3 do menu principal.
def exercitar():
    print('Você fez vários exercícios!')
# Esta é a função do menu principal do programa.
def main():
    while True:
        acao = int(input('Você está em casa, o que deseja fazer?\n'
        '1: Ir ao mercado\n'
        '2: Sair\n'
        '3: Praticar exercícios\n'))
        if acao == 1:
            mercado()   # Vai para a função do mercado.
        elif acao == 2:
            break   # Sai do while
        elif acao == 3:
            exercitar()   # Faz os exercicios.
    print('Até a próxima!')   # Cai aqui quando sai do while.
# Chama a função principal do seu programa.
main()

Take a look at this code, I think you'll be able to implement what you want from that. I hope I was helpfull! : D

    
09.12.2018 / 23:37
0

You can do something like this:

dinheiro = 10
a = int(input("digite sua opcao aqui: "))# nessa linha voce captura a opcaoo do usuario garante que a variavel sera do tipo int e exibe na tela o texto entre aspas.
if(a==1):
  dinheiro=dinheiro-5 # aqui armazena o valor na sua variavel dinheiro você tambem pode fazer dinheiro -= 5 que faz a mesma coisa escolha um que prefira
  print("-5")
elif():
  print("opcao 2 ")
elif():
  print("opcao 3")
else:
  print("opcao invalida")

b = int(input("outra escolha:"))
if(b==2):
 print(dinheiro)
    
09.12.2018 / 20:31