python 中的 Try / Except 语句

Try / Except Statements in python

我正在尝试创建一个使用 try/except 语句的 python 程序。一切正常,除了我仍然收到值错误,即使在定义了 except 语句之后也是如此。

我的代码:

    inventory = {847502: ['APPLES 1LB', 1.99, 50], 847283: ['OLIVE OIL', 10.99, 100], 839529: ['TOMATOS 1LB', 1.29, 25], 
             483946: ['MILK 1/2G', 3.45, 35], 493402: ['FLOUR 5LB', 2.99, 40], 485034: ['BELL PEPPERS 1LB', 1.35, 28], 
             828391: ['WHITE TUNA', 1.69, 100], 449023: ['CHEESE 1/2LB', 4.99, 15]}

upc_input = int(input('Enter a UPC number:  '))
description = input('Enter a, item description: ')
unit_price = float(input('Enter the unit price: '))
quantity = int(input('Enter th quantity: '))

try:
    if upc_input in inventory.keys():
        print('Inventory Updating')
        inventory[upc_input] = [description,unit_price,quantity]

except Excetption as exp:
    print('Error occurred!',exp)

try:
    if upc_input not in inventory.keys():
        print('Adding new inventory')
        inventory[upc_input] = [description,unit_price,quantity]

except Excetption as exp:
    print('Error occurred!',exp)


print()    
print(inventory)



---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
<ipython-input-17-1313cc5c500f> in <module>()
----> 1 upc_input = int(input('Enter a UPC number:  '))
      2 description = input('Enter a, item description: ')
      3 unit_price = float(input('Enter the unit price: '))
      4 quantity = int(input('Enter th quantity: '))
      5 

ValueError: invalid literal for int() with base 10: 'eeeee'
inventory = {847502: ['APPLES 1LB', 1.99, 50], 847283: ['OLIVE OIL', 10.99, 100], 839529: ['TOMATOS 1LB', 1.29, 25], 
             483946: ['MILK 1/2G', 3.45, 35], 493402: ['FLOUR 5LB', 2.99, 40], 485034: ['BELL PEPPERS 1LB', 1.35, 28], 
             828391: ['WHITE TUNA', 1.69, 100], 449023: ['CHEESE 1/2LB', 4.99, 15]}

while True:
     try:
          upc_input = int(input('Enter a UPC number:  '))
          break
     except Exception:
         print("Oops!  That was no valid number.  Try again...")

if upc_input in inventory.keys():
    description = input('Enter a, item description: ')
    unit_price = float(input('Enter the unit price: '))
    quantity = int(input('Enter th quantity: '))
    print('Inventory Updating')
    inventory[upc_input] = [description,unit_price,quantity]

if upc_input not in inventory.keys():
    description = input('Enter a, item description: ')
    unit_price = float(input('Enter the unit price: '))
    quantity = int(input('Enter th quantity: '))
    print('Adding new inventory')
    inventory[upc_input] = [description,unit_price,quantity]

print()    
print(inventory)

到了!我检查了您的代码并发现以下内容,a) 您拼写错误 "Exception" 和 b) 存在逻辑错误。您首先询问号码,然后使用语句 try。你必须在 try 语句中输入,否则你的程序什么都不做

检查我的代码,我在 try: 中有输入语句,如果一切正常,那么它将继续询问其他输入并根据参考号设置它们 is/isnt在列表中