IDnum = input("\nprompt: ")
if int(IDnum) >= 0 :
if int(IDnum) in T.keys() :
print("ID number(s) that {} will contact is(are) {}.".format(int(IDnum),T[int(IDnum)]))
else :
print("Entered ID number {} does not exist.".format(int(IDnum)))
else:
break
它实际上是一个while循环,接收ID号并检查数字是否在文件中。使用if语句检查输入是否int> = 0
我想使它识别输入是否为整数> = 0,如果是别的,(例如,空格,回车,字符,浮点等)打破循环。
如何使用if语句执行此操作?
我已经试过 如果IDNUM == '' 或IDNUM == '' 或INT(IDNUM)< 0: 但如你所知,它不能涵盖所有的其他情形。
我会简单地用'input_string.strip去()ISDIGIT()'检查一个正整数。 –
@SvenMarnach但是,这将意味着通过数字字符串两次,一次用于验证,另一次用于转换 – comiventor
@comiventor我认为这是最可读和最简单的代码。性能在这里根本不重要(并且注意抛出异常很慢)。 –