如何返回两个字典而不是返回集合?

时间:2019-03-20 08:00:54

标签: python

def foo():
    dict_1 = dict()
    dict_2 = dict()

    return dict_1, dict_2

print(foo())

结果:({}, {})

但是我需要{}, {}

如何做到?

我试图从函数返回数据但得到:

请参阅:

[{
        'root': {
            'id': '17958765',

        }
    }, ({
        'lots': [{
                'purchaseNumber': '0873500000818004164'
            }
        ]
    }, {
        'PurchaseObjects': [{
            {
                'OKPD2_code': '123',
                'OKPD2_name': 'ffff'
            }
        ]
    })]

2 个答案:

答案 0 :(得分:0)

这些都是同一件事,只有({}, {})以明确的方式打印。

该函数返回一个tuple(更接近2元组),而不是标题中所说的set

答案 1 :(得分:0)

oe-pkgdata-util list-pkg-files -p def-abc-xyz def-abc-xyz-dbg: def-abc-xyz-staticdev: /usr/lib/libabc.a def-abc-xyz-dev: /usr/include/abc.h def-abc-xyz: [snip] 将为您提供两个字典的2元组。获取返回值,并对元组建立索引或解压缩以获取对您的两个词典的单独访问。

foo()

在您给出的示例中,拆包显然是更好的方法,但是在某些情况下,您可能希望保留返回的元组并在以后通过索引访问其元素。