【发布时间】:2019-06-04 16:21:30
【问题描述】:
我在执行多次的 python 函数调用中有一个 for 循环。我需要返回字典中的值以将它们转储到数据库中。
这是一段示例代码,我如何将值附加到字典并确保我拥有所有这些值以供进一步使用。
def parser_code():
log = dict()
for i in range(len):
log['abc'] = 2*i
log['xyz'] = 10+i
return log
这将至少执行两次,所以我希望字典成为 log = {['abc':2, 'xyz':11],['abc':3, 'xyz':12]}
如何每次都附加到结果中?还是有更聪明的方法来做到这一点?
【问题讨论】:
-
您的预期答案的语法很奇怪。您是否希望
log成为列表类型,而不是字典?那么log = [{'abc':2, 'xyz':11},{'abc':3, 'xyz':12}]? -
可以是dict,我只是想把for循环的所有结果追加进去。
-
问题是,字典在 Python 中不是这样工作的。您可以设置字典键的值,但“附加”不是字典的功能。
-
为了更清楚地了解您想要在函数结果中拥有什么,也许可以解释一下您以后想用它做什么。然后有人可以为结果提供一个合适的数据结构的答案。
-
我会将这些存储在 sqlite 数据库中。 “abc”和“xyz”实际上是与正在运行的服务器实例相关的信息,因此它们可以用于不同的服务器或只是在不同的时间段。
标签: python dictionary for-loop return