Sida 1 av 1
Vill göra en start meny i Python
Postat: 13 okt 2007, 11:01
av ZerQ
Hej
Jag sitter och gör ett litet program men skulle vilja ha en meny där jag kan välja mellan 3 olika saker.
1. Läsa in en text
2. Skriv ut texten som senast vart inläst
3. Avsluta programmet
Funktionen läsa in en text skall kunna gå att starta igen genom att välja 1 och trycka enter, likaså val nummer 2 och val 3 skall enkelt avsluta programmet bara.
Jag kommer inte på hur jag skall göra detta, finns det någon som kan hjälpa mig i rätt riktning

SV: Vill göra en start meny i Python
Postat: 13 okt 2007, 15:54
av upnorth
Är väldigt ny i python, men det här borde fungera
Kod: Markera allt
run = true
def main():
while run:
print "ZerQ's awsome texthandler!"
print " "
print "Menue:"
print "1. Enter text"
print "2. Print newest entered text"
print "3. Quit"
print " "
choice = input("Pick SOMETHING FFS: ")
if choice ==1:
enterNew()
else if choice ==2:
printEntry()
else if choice ==3:
run = false
else:
print "Don't fuck around!"
Här finns en del läsvärt:
http://www.sthurlow.com/python/
Vår kurslitteratur som PDF:
http://www.greenteapress.com/thinkpython/thinkCSpy.pdf
Dokumentation på python.org:
http://www.python.org/doc/
SV: Vill göra en start meny i Python
Postat: 13 okt 2007, 16:02
av Smygis
Grafiskt? Vilka widgets?
Text? Curses? Hur ser det ut nu?
Jag gissar på text.
#!/usr/bin/env python
# -*- coding: UTF-8 -*-
def readText():
pass
def printLast():
pass
def exitApp():
exit()
def menu():
meny = {"1": readText, "2": printLast, "3": exitApp}
for i in ((1, "Läs in text"), (2, "Skriv ut förra"), (3, "Avsluta")):
print "%i: %s" % i
val = raw_input("Ditt val: ")
meny[val]()
menu()
Typ något sånt går att göra.
SV: Vill göra en start meny i Python
Postat: 13 okt 2007, 16:05
av upnorth
Smygis skrev:
Grafiskt? Vilka widgets?
Text? Curses? Hur ser det ut nu?
Jag gissar på text.
#!/usr/bin/env python
# -*- coding: UTF-8 -*-
def readText():
print "hej"
def printLast():
print "Last"
def exitApp():
exit()
def menu():
meny = {"1": readText, "2": printLast, "3": exitApp}
for i in ((1, "Läs in text"), (2, "Skriv ut förra"), (3, "Avsluta")):
print "%i: %s" % i
val = raw_input("Ditt val: ")
meny[val]()
menu()
Typ något sånt går att göra.
FAN vad mycket smidigare allt verkar vara i Python jämfört med C++

SV: Vill göra en start meny i Python
Postat: 13 okt 2007, 16:23
av Smygis
Nu med felhantering:
#!/usr/bin/python
# -*- coding: UTF-8 -*-
def readText():
pass
def printLast():
pass
def exitApp():
exit()
def menu():
meny = {"1": readText, "2": printLast, "3": exitApp}
while True:
for i in ((1, "Läs in text"), (2, "Skriv ut förra"), (3, "Avsluta")):
print "%i: %s" % i
val = raw_input("Ditt val: ")
try:
meny[val]()
except KeyError:
print "Dåligt val."
menu()
Några saker upnorth:
True och False. inte true och false.
Undvik att använda input annat än om du absolut är säker på om det är den du vill använda, samt har bra felhantering. använd raw_input och bahandla den så det blit det du vill. Tex int(raw_input()). Det är lattare att hantera om något skulle gå galet.
Läs PEP8.
SV: Vill göra en start meny i Python
Postat: 14 okt 2007, 09:15
av ZerQ
Ni är bara för underbara, suberba svar och mycket snabbt också kanon
Jo det är en textbaserad utan widgets, dom kommer senare när jag lär mig mera
/ZerQ