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大家好,所以我一直在嘗試對此輸入執行驗證,并將輸入添加到字典中。我設法執行驗證,如果值不符合要求,程序將再次提示用戶。但是,該程序總是接受錯誤的輸入(第一個輸入),即使它在錯誤輸入后重新提示用戶輸入正確。它沒有接受正確的輸入,而是接受了可能錯誤的第一個輸入。我會很感激我能得到的任何幫助,非常感謝
1 回答

守候你守候我
TA貢獻1802條經驗 獲得超10個贊
僅當條件是True您的代碼將值存儲在字典中時才將值存儲在字典中,即使長度不等于 6。
改變這個
if len(str(serialnumber)) == 6:
break
productserialnumber[item] = serialnumber
這個
if len(str(serialnumber)) == 6:
productserialnumber[item] = serialnumber
break
添加回答
舉報
0/150
提交
取消