Python 基于用户输入创建带键的词典

Python 基于用户输入创建带键的词典,python,dictionary,Python,Dictionary,用户输入一个整数n,该整数将以可变大小存储。如何创建一个具有相同n个键和我们选择的名称的词典? 键值的名称将是ID标签这是一种方式 Cow_id_list = [] Herd_Size = int(input("Enter the size of the herd.")) for x in range(Herd_Size): Cow_id = int("Enter a unique 3 digit ID tag for cow",x+1) Cow_id_list.append

用户输入一个整数n,该整数将以可变大小存储。如何创建一个具有相同n个键和我们选择的名称的词典? 键值的名称将是ID标签

这是一种方式

Cow_id_list = []

Herd_Size = int(input("Enter the size of the herd."))

for x in range(Herd_Size):
    Cow_id = int("Enter a unique 3 digit ID tag for cow",x+1)
    Cow_id_list.append(Cow_id)

print("Initiating yield entry...")
解释

要求输入奶牛id的整数,方法与牛群大小相同。 对收益率也是如此。创建一个产量列表,如Cow\u id\u列表。 最后,通过dictzipids创建一个字典。zip用于按索引同时迭代2个列表。 应用dict将从结果值对创建字典。

为了进一步提高你的逻辑,我建议你考虑添加一些控件;例如,确保ID实际上由3位数字组成。

这是一种方法

Cow_id_list = []

Herd_Size = int(input("Enter the size of the herd."))

for x in range(Herd_Size):
    Cow_id = int("Enter a unique 3 digit ID tag for cow",x+1)
    Cow_id_list.append(Cow_id)

print("Initiating yield entry...")
解释

要求输入奶牛id的整数,方法与牛群大小相同。 对收益率也是如此。创建一个产量列表,如Cow\u id\u列表。 最后,通过dictzipids创建一个字典。zip用于按索引同时迭代2个列表。 应用dict将从结果值对创建字典。

为了进一步提高你的逻辑,我建议你考虑添加一些控件;例如,为了确保ID实际上由3位数字组成。

jpp的方法可能更好,因为您可以同时获得收益率和ID。但是,如果要保持结构,可以这样做:

Cow_id_list = []
Yield_list = []

Herd_Size = int(input("Enter the size of the herd."))

for x in range(Herd_Size):
    Cow_id = int(input("Enter a unique 3 digit ID tag for cow"))
    Yield = int(input("Enter yield for {0}".format(Cow_id)))
    Cow_id_list.append(Cow_id)
    Yield_list.append(Yield)

d = dict(zip(Cow_id_list, Yield_list))

这里发生的事情是,您将d初始化为一个空字典,然后遍历您的cow ID,逐个获取收益率,然后为每个cow添加一个键,并将相应的收益率作为值添加到字典d中。

jpp的方法可能更好,因为您可以同时获得收益率和ID。但是,如果要保持结构,可以这样做:

Cow_id_list = []
Yield_list = []

Herd_Size = int(input("Enter the size of the herd."))

for x in range(Herd_Size):
    Cow_id = int(input("Enter a unique 3 digit ID tag for cow"))
    Yield = int(input("Enter yield for {0}".format(Cow_id)))
    Cow_id_list.append(Cow_id)
    Yield_list.append(Yield)

d = dict(zip(Cow_id_list, Yield_list))

这里发生的事情是,您将d初始化为一个空字典,然后遍历您的cow ID,一个接一个地获取收益率,然后为每个cow添加一个键,并将相应的收益率作为值添加到字典d中。

不确定为什么需要创建一个具有特定数量键的字典。您可以要求用户输入ID和yield,然后将其放入字典中

如果你有10头奶牛,你就不会有15头ID和产量

Cow_id_list = []

Herd_Size = int(input("Enter the size of the herd."))

for x in range(Herd_Size):
    Cow_id = int(input("Enter a unique 3 digit ID tag for cow"))
    Cow_id_list.append(Cow_id)

print("Initiating yield entry...")

d = {}
for i in Cow_id_list:
    y = float(input("Enter yielf for cow {}: ".format(i)))
    d[i] = y

不确定为什么需要创建具有特定键数的词典。您可以要求用户输入ID和yield,然后将其放入字典中

如果你有10头奶牛,你就不会有15头ID和产量

Cow_id_list = []

Herd_Size = int(input("Enter the size of the herd."))

for x in range(Herd_Size):
    Cow_id = int(input("Enter a unique 3 digit ID tag for cow"))
    Cow_id_list.append(Cow_id)

print("Initiating yield entry...")

d = {}
for i in Cow_id_list:
    y = float(input("Enter yielf for cow {}: ".format(i)))
    d[i] = y

那么dict的键和值应该是什么呢?它们都是用户输入的吗?键应该是奶牛的ID标记,值应该是用户将输入的牛奶产量。但是ID标记也是用户输入的吗?是的,但我不知道如何在字典上创建n个键。。。键值的名称将是IDSo dict的键值和值应该是什么?它们都是用户输入的吗?键应该是奶牛的ID标记,值应该是用户将输入的牛奶产量。但是ID标记也是用户输入的吗?是的,但我不知道如何在字典上创建n个键。。。键值的名称将是ID