Python:将两项列表作为用户输入的值存储在字典中?

2024-06-17 09:23:21 发布

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

我试图建立一个简单的杂货店助手程序,作为输入

a)成分
b) 数值
c) a测量值(如TB、cups)

并最终返回所需项目的列表。在

因为我想让用户输入相同的成分两次,然后将测量值添加到先前输入的成分中,所以我试图找出如何将用户的数值和测量输入以两项列表的形式存储为字典的值,以便以后可以对它们进行修改,然后全部打印出来。在

以下是我试图让主要部分发挥作用的粗略尝试:

ingredients = {}

program_run = True

while program_run:
  ingredient = input("Give me an ingredient: ")
  measurement = input("Unit of measurement? ")
  howMuch = input("How much? ")

  ingredients[ingredient] = howMuch

print(ingredients)

那么我如何让用户输入measurementhowMuch以两项列表的形式存储为字典“成分”的值,这样我就得到了类似这样的结果:

^{pr2}$

谢谢你!在


Tags: run用户列表input字典助手program形式
2条回答

嗯,ingredients[ingredient]表示字典ingredients中键ingredient的值。您希望该值是一个列表,因此可以执行以下操作:

ingredients = {}

program_run = True

while program_run:
      ingredient = input("Give me an ingredient: ")
      measurement = input("Unit of measurement? ")
      howMuch = input("How much? ")

      # cast measurement to float and create a list from user inputs
      details = [float(measurement), howMuch]

      # add the list to the dict
      ingredients[ingredient] = details

您需要用measurementhowMuch变量创建一个列表,然后将其保存到components dict中

ingredients = {}

program_run = True

while program_run:
  ingredient = input("Give me an ingredient: ")
  measurement = input("Unit of measurement? ")
  howMuch = input("How much? ")

  ingredients[ingredient] = [howMuch, measurement]

print(ingredients)

如果你想格式更好,你可以这样做。在

^{pr2}$

相关问题 更多 >