如何将多个元素追加/扩展到数组中?

时间:2018-07-15 06:58:24

标签: python json python-2.7 list pandas

我在尝试将标题输入到数组中时遇到问题,我无法在数组中附加数组值的标题。我也曾尝试使用.extend,但这也给我带来了问题。

mylist = []

for i in jsonResponse['M']:
     if i['x'] == 'n':
          x = ((i['x']))
          y = ((i['x']['y']))
          z = ((i['x']['z']))

          mylist.append([x,y,z])

          import pandas as pd

          #panda related stuff
          df0 = pd.DataFrame(data=mylist)
          df0.to_excel(writer, sheet_name='Sheet1', header=True, index=False)

我想拥有:

mylist.append('Header1': [x],['Header2': [y],['Header3': [z])

我尝试使用.extend,因为我认为这是最合适的方法,但这给了我错误。

这样做的目的是当我将数据写入excel时,最好有一个标头。问题源于从JSON pull上方的最开始打开数组,我想我必须打开数组,因为这是分配内存来存储值的一种方式。

我当时想解决方案是根据JSON pull的意义创建一个值数组:

x = []
y = []
z = []
for i in jsonResponse['M']:
     if i['x'] == 'n':
          x = ((i['x']))
          y = ((i['x']['y']))
          z = ((i['x']['z']))

          x.append('header1':[x])
          y.append('header2':[y])
          z.append('header3':[z]) 

但是我不知道这是否行得通;我真的不想去做,因为这有点费力,因为我有很多json对象。

我是Python的新手,以前从未用语言写过任何东西。我正在尝试,大部分时间都花在从文档和其他用户那里复制脚本,这些脚本试图一起解析可行的代码,同时试图理解我的意图。

1 个答案:

答案 0 :(得分:0)

您要查找的内容在Python中称为dictionary(或字典)。

dict允许您创建如下映射:

{'name': 'John', 'age': 30}

因此,现在您所要做的就是需要在for循环中创建一个dict,然后将该dict附加到mylist

for i in jsonResponse['M']:
    ...
    mylist.append({'Header1': x, 'Header2': y, 'Header3': z})