字典验证 - 程序首先输入可能是错误的

while exit :

               try:

                   serialnumber = int(input("serial number of product :"))

               except ValueError :

                   print("Invalid input")

                   print()

               else:

                   if len(str(serialnumber)) == 6:

                       break

                   print()

                   print("Serial number cant be used, format : 012345 ")

                   print()

                   productserialnumber[item] = serialnumber

大家好,所以我一直在尝试对此输入执行验证,并将输入添加到字典中。我设法执行验证,如果值不符合要求,程序将再次提示用户。


但是,该程序总是接受错误的输入(第一个输入),即使它在错误输入后重新提示用户输入正确。


它没有接受正确的输入,而是接受了可能错误的第一个输入。


我会很感激我能得到的任何帮助,非常感谢


莫回无
浏览 134回答 1
1回答

守候你守候我

仅当条件是True您的代码将值存储在字典中时才将值存储在字典中,即使长度不等于 6。改变这个if len(str(serialnumber)) == 6:    breakproductserialnumber[item] = serialnumber这个if len(str(serialnumber)) == 6:    productserialnumber[item] = serialnumber    break
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python