Du bist hier: Snippet-Verzeichnis » Python (121)
Sprache:

ask for confirmation in console

Sprache: English
Programmiersprache: Python
Veröffentlicht von: rainy [nicht registriert]
Letzte Änderung: 15.05.2006
Aufrufe: 980


Beschreibung

This function will ask for confirmation in console, accepting yY or Nn or Enter for optional default; if no good answer is given, it'll keep asking.Usage:if yes("Do you want to do this?", 'y'): do_this()if no("Do you want that?", 'n'): do_other()else: do_that()Prompt will look like:Do you want to do this? [Y/n]

Code

1 def yes(question, default=None): 2 """Return 1 on 'yes' and 0 on 'no'; default may be set to 'y' or 'n'.""" 3 y = 'y' 4 n = 'n' 5 if default: 6 if default in "Yy": 7 y = 'Y' 8 elif default in "Nn": 9 n = 'N' 10 else: 11 print "Error: default must be 'y' or 'n'." 12 return 13 while 1: 14 answer = raw_input(question + " [%s/%s] " % (y, n)) 15 if default: 16 if default in "Yy": 17 if not answer or (len(answer) == 1 and answer in "Yy"): 18 return 1 19 elif len(answer) == 1 and answer in "Nn": 20 return 0 21 elif default in "Nn": 22 if not answer or (len(answer) == 1 and answer in "Nn"): 23 return 0 24 elif len(answer) == 1 and answer in "Yy": 25 return 1 26 else: 27 if len(answer) == 1 and answer in "Yy": 28 return 1 29 elif len(answer) == 1 and answer in "Nn": 30 return 0 31 32 def no(question, default=None): 33 return not yes(question, default) 34

Noch kein Kommentar vorhanden

Dieses Snippet kommentieren

Name *  

E-Mail (wird nicht angezeigt) *    

Website  

Kommentar *  

Sicherheitscode Sicherheitscode *    

RSS