【问题标题】:Add dictionary to list in python not working [duplicate]在python中将字典添加到列表不起作用[重复]
【发布时间】:2020-01-26 16:23:47
【问题描述】:

所以下面是我的代码: 我收到 none type object is not iterable 错误,因为 append 没有发生。

result_list_haops=[]
each_result={'name': 'ads-scin-tracking', 'monitoringGroup': 'HAOPS', 'azkabanInstance': 'lva1-war-waraz01', 'project': 'ads-metrics-pipeline', 'subscribers': ['ads-relevance@linkedin.com'], 'invalid_attribute': 'teamAskAlias', 'link': 'https://intake2.corp.linkedin.com:8767/#/flows/view/lva1-war-waraz01/ads-metrics-pipeline-ads-scin-tracking'}
group = each_result['monitoringGroup']
        self.log.debug(group)
if group == "HAOPS":
    result_list_haops = result_list_haops.append(each_result)

稍后在我的代码中,

result_grouped_by = sorted(result_list,key=itemgetter('subscribers')) 

它抛出 Nonetype 对象不可迭代。

我无法找到我在这里做错了什么。

我得到的错误: Nonetype 对象不可迭代

期望的行为:

result_list_haops=[{'name': 'ads-scin-tracking', 'monitoringGroup': 'HAOPS', 'azkabanInstance': 'lva1-war-waraz01', 'project': 'ads-metrics-pipeline', 'subscribers': ['ads-relevance@linkedin.com'], 'invalid_attribute': 'teamAskAlias', 'link': 'https://intake2.corp.linkedin.com:8767/#/flows/view/lva1-war-waraz01/ads-metrics-pipeline-ads-scin-tracking'}]

请帮帮我。

【问题讨论】:

    标签: python


    【解决方案1】:

    append 没有返回语句,因此它返回默认的None,这会将result_list_haops 从列表更改为None。不要使用赋值

    if group == "HAOPS":
        result_list_haops.append(each_result)
    

    【讨论】:

    • 您能否建议我需要对我的代码进行的更改
    • @user1795999 我做了,删除 result_list_haops = 并像在答案中一样使用它。
    猜你喜欢
    • 2016-06-04
    • 1970-01-01
    • 2011-08-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-19
    • 2016-05-28
    • 1970-01-01
    相关资源
    最近更新 更多