Python 一行中的多个字典操作

Python 一行中的多个字典操作,python,dictionary,Python,Dictionary,我有一个帮助函数来初始化字典。然后我需要向字典中添加其他项。有没有办法把它合并成一行?下面是一个测试类来说明我试图实现的目标: class Test: def get_dict(self): dict = self.initialize_dict() dict.update( { 'new_item' : 'Hello' } ) return dict def initialize_dict(self): retu

我有一个帮助函数来初始化字典。然后我需要向字典中添加其他项。有没有办法把它合并成一行?下面是一个测试类来说明我试图实现的目标:

class Test:
    def get_dict(self):
        dict = self.initialize_dict()
        dict.update( { 'new_item' : 'Hello' } )
        return dict

    def initialize_dict(self):
        return { 'blah' : 10 }

test = Test()
print(test.get_dict())
如果我将.update()添加到self.initialize\u dict()的末尾,字典将返回None。知道为什么在我将操作串在一起时没有返回任何值吗?还有其他字典操作我可以使用吗?只是想让这段代码不那么冗长

def get_dict(self):
    return self.initialize_dict().update( { 'new_item' : 'Hello' } 

有没有办法巩固它?是的:

dict({'blah': 10}, new_item='Hello')

但是,您可以通过这种方式创建的词典有一些限制,通常情况下,我认为两行更好。

为什么您觉得需要将其合并为一行?您认为这会给您带来什么好处?关于
None
结果,这是因为
update
方法不返回任何内容,请尝试以下方法:
d1={};print d1.update()
@Christian谢谢,这很有意义。@BrenBarn只是想看看是否有办法初始化字典并立即添加一个新项,因为这似乎是可能的。在看到米吉尔森的答案后,我同意它可能更适合作为两行。谢谢。在看到你的答案后,我同意用两行可能更好。