Anropa undermeny från extern fil i replit
Jag har ett problem med att anropa min externa fil mer än en gång. Jag har skapat en huvudmeny på min main-fil och jag kan anropa min undermeny från min externa second-fil utan problem en gång. Jag har skapat en knapp i min undermeny som heter tillbaka där jag "executar" min second-file och hoppar tillbaka till min main. När jag sedan kommer tillbaka till min Huvudmeny i min main-fil så funkar allt utom att gå in i undermenyn igen. Det händer nada...Jag har själv konstaterat att det är nå vajjsing i hur jag "executar" min second file då jag provat göra en enklare second file som bara printar ut en fjantig liten textremsa och den funkar utmärkt att anropa till fan löser av en. Vore sjukt tacksam för hjälp!
Detta är min kod i main-filen :
import replit
from getkey import getkey, keys
menuSelected = 0
input(menuSelected)
def FirstChoise():
replit.clear()
import second
second.second
def SecondChoise():
print("\nService")
input("Press Enter to continue...")
def EndProgram():
print("\nAvsluta programmet")
input("Press Enter to continue...")
menuOptions = ["Köp bil\t\t", "Service\t\t", "Avsluta\t\t"]
menuSelected = 0
while(True):
replit.clear()
print("\x1b[?25l")
if menuSelected == 0:
print(menuOptions[0] + "<--")
print(menuOptions[1])
print(menuOptions[2])
elif menuSelected == 1:
print(menuOptions[0])
print(menuOptions[1] + "<--")
print(menuOptions[2])
elif menuSelected == 2:
print(menuOptions[0])
print(menuOptions[1])
print(menuOptions[2] + "<--")
keyPressed = getkey()
if keyPressed == keys.DOWN and menuSelected + 1 != len(menuOptions):
menuSelected += 1
elif keyPressed == keys.UP and menuSelected >= 1:
menuSelected -=1
elif keyPressed == keys.ENTER:
if menuSelected == 0:
FirstChoise()
elif menuSelected == 1:
SecondChoise()
elif menuSelected == 2:
EndProgram()
print("\x1b[?25l")
break
Och detta är min kod i min second-file :
def second():
replit.clear()
import replit
from getkey import getkey, keys
def FirstChoise():
replit.clear()
print("\nDu har köpt en Volvo!")
input("Tryck enter för att fortsätta handla!")
def SecondChoise():
replit.clear()
print("\nDu har köpt en Tesla!")
input("Tryck enter för att fortsätta handla!")
def EndProgram():
replit.clear()
menuOptions = ["Volvo\t\t", "Tesla\t\t", "Tillbaka\t"]
menuSelected = 0
while(True):
replit.clear()
print("\x1b[?25l")
if menuSelected == 0:
print(menuOptions[0] + "<--")
print(menuOptions[1])
print(menuOptions[2])
elif menuSelected == 1:
print(menuOptions[0])
print(menuOptions[1] + "<--")
print(menuOptions[2])
elif menuSelected == 2:
print(menuOptions[0])
print(menuOptions[1])
print(menuOptions[2] + "<--")
keyPressed = getkey()
if keyPressed == keys.DOWN and menuSelected + 1 != len(menuOptions):
menuSelected += 1
elif keyPressed == keys.UP and menuSelected >= 1:
menuSelected -=1
elif keyPressed == keys.ENTER:
if menuSelected == 0:
FirstChoise()
print("\x1b[?25l")
elif menuSelected == 1:
SecondChoise()
print("\x1b[?25l")
elif menuSelected == 2:
EndProgram()
print("\x1b[?25l")
break
Det blir mycket lättare att förstå koden om du indenterar den rätt. Det går lättare om du använder kodverktyget, som ser ut som {;} i verktygsraden.