我如何从带有字典 python 的列表中第一个元素的键中获取值?
How do i get a value from a key in the first element in a list with dictionaries python?
我创建了一个生成器,它创建了一个列表,其中包含字典 {customer: "customer", key_id: key_id, key: "key"}
我需要检索将每个键分配给我 models.py 中的一个变量,以便通过 sqlalchemy 将它发送到我的数据库 sqlite。
我真的很陌生,在谷歌上搜索了几个小时后我放弃了..
因为它在一个 for 循环中,我的大脑告诉我我可以为每个循环提取一个新行。
正如您在我的代码中看到的那样,我尝试的最后一件事是将我的字典列表转换为字典..
data_generert = keydata.generator(amount, customer)
#outputs a dictlist
#{'customer': 'hoppsann', 'key_id': 1, 'key': 'PsqnF6TBVQ'}
#{'customer': 'hoppsann', 'key_id': 2, 'key': '8ZE174eH5t'}
#{'customer': 'hoppsann', 'key_id': 3, 'key': 'g1gKESViEB'}
#{'customer': 'hoppsann', 'key_id': 4, 'key': 'd45Tbvq3mu'}
#{'customer': 'hoppsann', 'key_id': 5, 'key': 'lySs6q2ekG'}
#{'customer': 'hoppsann', 'key_id': 6, 'key': 'XKnup84vxv'}
for i in data_generert:
keys = Keys() # This is my model for sqalchemy
data_generert = {}
keys.customer = data_generert["customer"]
keys.key = data_generert["key"]
keys.key_id = data_generert["key_id"]
db.add(keys)
db.commit()
除非我误解了,否则您的生成器每次迭代都会产生 dict
。那么这意味着对于 data_generert
中的 i
每个 i
将是一个 dict
.
因此您应该通过 i
.
访问值
我建议将变量名称更改为更易于理解的名称,以明确每个值都是 dict
而不是 i
通常表示的标准 int
迭代器值。
data_generert = keydata.generator(amount, customer)
for d in data_generert:
keys = Keys()
keys.customer = d["customer"]
keys.key = d["key"]
keys.key_id = d["key_id"]
db.add(keys)
db.commit()
我创建了一个生成器,它创建了一个列表,其中包含字典 {customer: "customer", key_id: key_id, key: "key"}
我需要检索将每个键分配给我 models.py 中的一个变量,以便通过 sqlalchemy 将它发送到我的数据库 sqlite。
我真的很陌生,在谷歌上搜索了几个小时后我放弃了.. 因为它在一个 for 循环中,我的大脑告诉我我可以为每个循环提取一个新行。 正如您在我的代码中看到的那样,我尝试的最后一件事是将我的字典列表转换为字典..
data_generert = keydata.generator(amount, customer)
#outputs a dictlist
#{'customer': 'hoppsann', 'key_id': 1, 'key': 'PsqnF6TBVQ'}
#{'customer': 'hoppsann', 'key_id': 2, 'key': '8ZE174eH5t'}
#{'customer': 'hoppsann', 'key_id': 3, 'key': 'g1gKESViEB'}
#{'customer': 'hoppsann', 'key_id': 4, 'key': 'd45Tbvq3mu'}
#{'customer': 'hoppsann', 'key_id': 5, 'key': 'lySs6q2ekG'}
#{'customer': 'hoppsann', 'key_id': 6, 'key': 'XKnup84vxv'}
for i in data_generert:
keys = Keys() # This is my model for sqalchemy
data_generert = {}
keys.customer = data_generert["customer"]
keys.key = data_generert["key"]
keys.key_id = data_generert["key_id"]
db.add(keys)
db.commit()
除非我误解了,否则您的生成器每次迭代都会产生 dict
。那么这意味着对于 data_generert
中的 i
每个 i
将是一个 dict
.
因此您应该通过 i
.
我建议将变量名称更改为更易于理解的名称,以明确每个值都是 dict
而不是 i
通常表示的标准 int
迭代器值。
data_generert = keydata.generator(amount, customer)
for d in data_generert:
keys = Keys()
keys.customer = d["customer"]
keys.key = d["key"]
keys.key_id = d["key_id"]
db.add(keys)
db.commit()