【问题标题】:Appending to list with "'NoneType' object has no attribute 'append'' error使用“'NoneType' 对象没有属性 'append'' 附加到列表错误
【发布时间】:2019-07-13 23:24:59
【问题描述】:

我想遍历一个结果集,清理每个项目,然后附加到一个列表中。我这里有个问题:

尝试附加列表时出现错误,即 'AttributeError: 'NoneType' 对象没有属性 'append'。我试图通过 if pass 来克服,但我没有工作。有任何想法吗?

这是输入:

I_Details = 
['27Dec2017']
['04Jan2018']
['22,000,000USD(fiat)']
['20,000,000USD']
['China,Japan,UnitedStates']
['ZIL']
['Utility-token']
['No']
[ETH,,]
[40%-MiningRewards,,30%-Company,Team,Agencies,,30%-Early&CommunityContributors]
[(ZIL)]
[ETH,,,'return11.89x']

这是我的尝试:

Campaign_info_1 = list()
for Detail in I_Details:
  Campaign_info = Detail.contents
  Campaign_info = str(Campaign_info)
  if Campaign_info==None or Campaign_info=="": 
    pass 
  Campaign_info_1 = Campaign_info_1.append(Campaign_info) 
  print(Campaign_info)

【问题讨论】:

  • 此示例输入无法正确解释。
  • Campaign_info_1 = Campaign_info_1.append(Campaign_info) 行是否应该在 for 循环内?
  • 是的,对不起,它在 for 循环中。错误仍然存​​在。
  • Campaign_info_1 = Campaign_info_1.append(Campaign_info) 应该改为 Campaign_info_1.append(Campaign_info)。 Append 会改变原始列表,无需重新分配。 - 抱歉,如果这不能解决,仍然无法使用该输入运行代码。
  • @Deancoakley:工作,谢谢! :-)

标签: python for-loop str-replace data-cleaning


【解决方案1】:

Campaign_info_1 = Campaign_info_1.append(Campaign_info) 必须更改为 Campaign_info_1.append(Campaign_info)。 Append 会改变列表,不需要重新分配并导致错误。

Campaign_info_1 = list()
for Detail in I_Details:
  Campaign_info = Detail.contents
  Campaign_info = str(Campaign_info)
  if Campaign_info==None or Campaign_info=="": 
    pass 
  Campaign_info_1.append(Campaign_info) 
  print(Campaign_info)

【讨论】:

  • 完美运行! :-)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-11-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-08-02
  • 1970-01-01
  • 2021-04-15
相关资源
最近更新 更多