接受一个和两个变量而不中断的输入行?

Input line that accepts one and two variables without breaking?

我正在尝试创建一个“库存系统”作为初学者项目。我有一个包含字符串键和整数值的字典,我想让程序询问用户他想拿什么材料,以及带多少。该问题取自材料词典并将其添加到用户的“库存”中。我还设法重复了这个问题,以便用户可以根据需要多次从材料词典中获取。

trading_bill = True

n, q = input("What do you want to add? ").split()

while trading_bill:
    q = int(q)
    y = int(materials_dict.get(n))

    materials_dict.update({n: y - q})
    inv.update({n: q})
    print("Added.")

    n, q = input("+ ").split()

现在,我希望用户能够编写“完成”并让程序打印出他的库存并退出,但是输入行需要两个值,所以当你只给它一个时它会中断。有没有办法让最后一个输入只接受一个值而不是两个?

     n, q = input("+ ").split()
ValueError: not enough values to unpack (expected 2, got 1)

稍后拆分。

reply = input("+ ")
if reply == 'Done':
    break
n, q = reply.split()