使用 try except 方法用正数填充列表

问题描述 投票:0回答:1

我想用 try except 方法用正数填充列表。 这是我的代码。但它不会引发错误。怎么了?

myList = [] 
maxLengthList = int(input("Enter number of items: "))

def get_positive_numbers():

    while len(myList) < maxLengthList:
        item = int(input("Enter your Item to the List: "))
        myList.append(item)
        # print (myList)

   
    try:             
        if item < 0: 
            raise ValueError    
        print(myList)
    except ValueError:
        print ("Invalid number.")  
            

get_positive_numbers()

如果我尝试附加列表,我的 while 循环不起作用,它会继续要求输入数字。 请问您能帮忙吗?

python list exception
1个回答
0
投票

如果您希望在循环中出现错误,请也在循环中抛出错误,因为这样只会在输入后抛出错误。固定代码:

myList = [] 
maxLengthList = int(input("Enter number of items: "))

def get_positive_numbers():
    while len(myList) < maxLengthList:
        try:
            item = int(input("Enter your Item to the List: "))
            if item < 0:
                raise ValueError("Invalid number.")
            myList.append(item)
        except ValueError as e:
            print(e)
    print(myList)
            
get_positive_numbers()
© www.soinside.com 2019 - 2024. All rights reserved.