[英]Having problems with Value errors in Python 3
我正在编写一个测试程序,它在某种程度上类似于租用商店的库存跟踪器。 我正在检查用户输入的数据,但我的一个 if 语句检查条目时不断收到 ValueError。
def check_entries (): #This function checks whether what the user entered is correct for the entry and store
global customer_name_error_label
global receipt_numb_error_label
global item_hired_name_error_label
global numb_items_hired_error_label
global numb_items_hired_numb_rel_error_label
if customer_name_entry.get () .isalpha () and receipt_number_entry.get().isdigit() and item_hired_entry.get () .isalpha ():
if number_of_items_hired_entry.get () .isdigit () and int (number_of_items_hired_entry.get () ) >0 and int (number_of_items_hired_entry.get () ) <500:
customer_name_error_label.grid_forget ()
receipt_numb_error_label.grid_forget ()
item_hired_name_error_label.grid_forget ()
numb_items_hired_error_label.grid_forget ()
numb_items_hired_numb_rel_error_label.grid_forget ()
append_lists ()
else:
if customer_name_entry.get () .isalpha () ==False:
customer_name_error_label=Label (main_frame,text="Please enter a name that only has letters,no numbers ,and there must be a name entered ",bg='red')
customer_name_error_label.grid (row=0,column=3)
if receipt_number_entry.get () .isdigit() ==False:
receipt_numb_error_label=Label (main_frame,text="Please enter a receipt number that is only a number and doesn't have any letters or symbols.",bg='red')
receipt_numb_error_label.grid(row=1,column=3)
if item_hired_entry.get () .isalpha ()== False:
item_hired_name_error_label=Label (main_frame,text="Please enter a item name that only has letters,numbers and symbols aren't accepted.",bg='red')
item_hired_name_error_label.grid (row=2,column=3)
if number_of_items_hired_entry.get ().isdigit ()== False:
numb_items_hired_error_label=Label (main_frame,text="The number of items hired can only be a number,symbols,and letters aren't accepted.",bg='red')
numb_items_hired_error_label.grid (row=4,column=3)
if int (number_of_items_hired_entry.get () ) <0 and int (number_of_items_hired_entry.get () ) >500:
numb_items_hired_numb_rel_error_label=Label (main_frame,text="The number of items hired can only be more then 0 and less then 500",bg='red')
numb_items_hired_numb_rel_error_label.grid (row=5,column=2)
有一张图片显示我正在为所有条目输入一个空字符串,然后我按下 append 详细信息按钮。]
if int (number_of_items_hired_entry.get () ) <0 and int (number_of_items_hired_entry.get () ) >500: ValueError: invalid literal for int() with base 10: ''
# add 2 lines
if number_of_items_hired_entry.get() == '':
number_of_items_hired_entry.set('0')
if int(number_of_items_hired_entry.get () ) <0 and int(number_of_items_hired_entry.get () ) >500:
numb_items_hired_numb_rel_error_label=Label (main_frame,text="The number of items hired can only be more then 0 and less then 500",bg='red')
numb_items_hired_numb_rel_error_label.grid (row=5,column=2)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.