繁体   English   中英

Append 使用 Python 中的单个语句将项目添加到多个列表

[英]Append items to multiple lists with a single statement in Python

我在 Python 中有这样的字典:

my_dict = {'first': [], 'second': [], 'third': []}

如您所见,它里面有两个列表。 我想用一个like/statement将项目添加到每个列表中,如下所示:

my_dict['first', 'second'].append([1,2])

所以这段代码之后的结果是: {'first': [1], 'second': [2], 'third': []}

有什么简单的方法可以做到这一点吗? 我真的想避免 for 循环。

谢谢!

遍历字典键

您可以遍历字典的键,将新项目附加到每个字典值。 例如:

new_item = 'foo'
for key in my_dict:
    my_dict[key].append(new_item)

my_dict
# {'first': ['foo'], 'second': ['foo'], 'third': ['foo']}

用例很奇怪,但你可以尝试这样的事情。



class CustomDict(defaultdict):
    def append(self, keys, values):
        for key, value in zip(keys, values):
            self[key].append(value)


k = CustomDict(list)
k.append(keys=["first", "second"], values=[1, 2])

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM