您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

附加到Python字典中的列表

附加到Python字典中的列表

list.append返回None,因为它是就地操作,并且您将其分配回dates_dict[key]。因此,下一次dates_dict.get(key, []).append您实际要做的是None.append。这就是为什么它失败了。相反,您只需

dates_dict.setdefault(key, []).append(date)

但是,我们collections.defaultdict仅出于此目的。你可以做这样的事情

from collections import defaultdict
dates_dict = defaultdict(list)
for key, date in cur:
    dates_dict[key].append(date)

如果key在字典中找不到,则会创建一个新的列表对象。

defaultdict如果在字典中找不到关键字,则由于会创建一个新列表,因此会产生意想不到的副作用。例如,如果您只想检索键的值(该值不存在),它将创建一个新列表并返回它。

python 2022/1/1 18:43:05 有281人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶