#NEWLINE# def prompt_for_yn( prompt_str , default = None ) : #NEWLINE# #INDENT# if ( default == True ) : #NEWLINE# #INDENT# prompt = ( prompt_str + ' [Y/n]: ' ) #NEWLINE# #UNINDENT# else : #NEWLINE# #INDENT# if ( default == False ) : #NEWLINE# #INDENT# prompt = ( prompt_str + ' [y/N]: ' ) #NEWLINE# #UNINDENT# else : #NEWLINE# #INDENT# prompt = ( prompt_str + ' [y/n]: ' ) #NEWLINE# #UNINDENT# #UNINDENT# while True : #NEWLINE# #INDENT# try : #NEWLINE# #INDENT# value = input ( prompt ) #NEWLINE# #UNINDENT# except KeyboardInterrupt : #NEWLINE# #INDENT# print ( '' ) #NEWLINE# exit ( 1 ) #NEWLINE# #UNINDENT# except EOFError : #NEWLINE# #INDENT# print ( '' ) #NEWLINE# exit ( 1 ) #NEWLINE# #UNINDENT# if ( value != '' ) : #NEWLINE# #INDENT# if ( value . lower ( ) [ 0 ] == 'y' ) : #NEWLINE# #INDENT# return True #NEWLINE# #UNINDENT# else : #NEWLINE# #INDENT# if ( value . lower ( ) [ 0 ] == 'n' ) : #NEWLINE# #INDENT# return False #NEWLINE# #UNINDENT# else : #NEWLINE# #INDENT# print ( 'Error: unrecognized response' ) #NEWLINE# #UNINDENT# #UNINDENT# #UNINDENT# else : #NEWLINE# #INDENT# if ( default is not None ) : #NEWLINE# #INDENT# return default