python写入列表append换行问题_python列表append问题

company_dict_noIPO = {}

company_noIPOlist = []

for item in dom.iterfind('list/item'):

if item.iterfind('StockHolderInfolist'):

#company_dict_noIPO['corp']

# corpname=item.findtext('EnName')

for items in item.iterfind('StockHolderInfolist'):

for entry in items:

#company_dict_noIPO['corp']=corpname

company_dict_noIPO['stockhoder'] = entry.findtext('stockhoder')

company_dict_noIPO['investratio'] = entry.findtext('investratio')

company_dict_noIPO['investamt'] = entry.findtext('investamt')

company_noIPOlist.append(company_dict_noIPO)

#print company_dict_noIPO

print company_noIPOlist

这里我想把每次解析出来的字典company_dict_noIPO用append方法添加到列表company_noIPOlist里,但是结果显示如下:

第一次循环得到的结果:

[{'stockhoder': u'u674eu6653u519b', 'investamt': u'800.00u4e07u5143', 'investratio': '72.73%'}]

第二次循环得到的结果:

[{'stockhoder': u'u6bb5u6625u751f', 'investamt': u'300.00u4e07u5143', 'investratio': '27.27%'}, {'stockhoder': u'u6bb5u6625u751f', 'investamt': u'300.00u4e07u5143', 'investratio': '27.27%'}]

在第二次循环迭代的时候把第一次循环获得的列表元素给覆盖了,请问这是什么问题,怎么解决?

字典

我一开始以为是循环有问题,但是print字典company_dict_noIPO的结果如下:

{'stockhoder': u'u674eu6653u519b', 'investamt': u'800.00u4e07u5143', 'investratio': '72.73%'}

{'stockhoder': u'u6bb5u6625u751f', 'investamt': u'300.00u4e07u5143', 'investratio': '27.27%'}

所以循环是没问题的。

完全没思路到底是哪里出错了,求大神解决。。

你可能感兴趣的:(python写入列表append换行问题_python列表append问题)