On Fri, Mar 29, 2013 at 9:39 PM, Amit Saha <amitsaha...@gmail.com> wrote: > On Fri, Mar 29, 2013 at 9:35 PM, Amit Saha <amitsaha...@gmail.com> wrote: >> On Fri, Mar 29, 2013 at 9:33 PM, Ghadir Ghasemi >> <ghasemm...@leedslearning.net> wrote: >>> Hi guys I am trying to create part of a vending machine. The section below >>> is if the user wants to insert 50p coins. It works but when I entered a non >>> integer like 'dfsdf', the program just broke. Is there a way that the >>> program can check if the input is an integer, and if it is, then the >>> program does all the calculations, but if it isn't the program just keeps >>> asking for an input? Thanks. Here is the section. >>> >>> fiftypencecoins = int(input("how many 50p coins do you want to insert or >>> press 'e' to exit : ")) >>> if fiftypencecoins == 'e': >>> break >>> else: >>> currentmoney += fiftypencecoins * 5/10 >>> print("your newly updated credit is £" + str(currentmoney) + "0") >> >> Is this Python 3 or Python 2 ? > > May be that's not relevant. So anyway, if you want to see whether the > int() function will be successful on your input, you need to check > whether the input constitutes of only digits. > > I can think of two ways: > > 1. Easy and naive way: for each character in the input, check whether > it is between [0-1]
Oh lord. That should be [0-9]. Sorry. -- http://amitsaha.github.com/ _______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: http://mail.python.org/mailman/listinfo/tutor