【问题标题】:Return key, value and assign to dictionary in one line in Python在Python中的一行中返回键,值并分配给字典
【发布时间】:2021-07-26 20:37:25
【问题描述】:

我有一个执行作业并返回作业 ID 以及是否成功的函数。然后我需要将这些结果存储在一个字典中。目前我这样做:

jobs_results = {}

...

job_id, job_result = execute_function()
jobs_results[job_id] = job_result

但是,我想知道是否有办法将这两行变成一个单行,或者这是否是 Pythonic 的方式?

【问题讨论】:

  • 即使下面的一些答案是可能的,我也不建议你像这些一样使用很多单行。请记住以下Zen of Python 行:“美胜于丑”、“显式胜于隐式”和“如果实现难以解释,这是个坏主意”。

标签: python dictionary return


【解决方案1】:

你可以用一个元组来更新你的字典,

jobs_results.update((execute_function(),))

或者只是将其分配为元组的元组

job_results = dict((execute_function(),))

我更喜欢你目前的方法,因为它更清晰

【讨论】:

    【解决方案2】:

    你可以从你的函数中返回一个dict,然后使用dict.update

    例如:

    def execute_function():
        ....
        return {job_id: job_result}
    
    jobs_results.update(execute_function())
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-12-03
      • 1970-01-01
      • 2021-10-06
      • 1970-01-01
      • 1970-01-01
      • 2021-10-25
      • 1970-01-01
      相关资源
      最近更新 更多