没有正确地附加到列表中?

2024-06-16 11:27:05 发布

您现在位置:Python中文网/ 问答频道 /正文

def addItem():
    flavorsMenu()
    flavor = int(input("> "))
    validateData(flavor)
    if validateData(flavor) == "f":
        print("Sorry, that was an invalid choice.")
        return None
    else:
        print("How many would you like to buy? (1-10) ")
        qty = int(input("> "))
        if qty <= 0 or qty > 10:
            print("Invalid number, please try again")
        else:
            quantityList.append(qty)
            itemsList.append(flavors[flavor - 1])
            print("You have added", qty, str(flavors[flavor - 1]) + "(s) to your list.")
            return flavor

我把返回的味道,看看它是否会有帮助,但它没有,我已经在顶部定义了一切

flavors = ["Thin Mints", "Tagalongs", "Samoas", "Lemon Chalet Cremes", "Dulce de Leche", "Sugar Free Chocolate Chip", "Do-Si-Dos", "Trefoil"]

但当我输入5时,它会给我薄型薄荷糖,也就是1。当我输入4时,它又会给我薄型薄荷糖。当我输入3时,它会给我标记符

为什么会这样


Tags: toinputreturnifdefelseintqty
1条回答
网友
1楼 · 发布于 2024-06-16 11:27:05

我将您的代码编写为:

flavors = ["Thin Mints", "Tagalongs", "Samoas", "Lemon Chalet Cremes", "Dulce de Leche", "Sugar Free Chocolate Chip", "Do-Si-Dos", "Trefoil"]

quantityList = []
itemsList = []

def addItem():
    flavor = int(input("> "))
    print("How many would you like to buy? (1-10) ")
    qty = int(input("> "))
    if qty <= 0 or qty > 10:
        print("Invalid number, please try again")
    else:
        quantityList.append(qty)
        itemsList.append(flavors[flavor - 1])
        print("You have added", qty, str(flavors[flavor - 1]) + "(s) to your list.")
        return flavor

print flavors[ addItem() -1 ]

而且效果很好

相关问题 更多 >