在python中插入从json获得的2xn列表

时间:2015-05-29 16:46:00

标签: python json list

您好我试图访问json以将其保存在列表中以执行某种追加并在ReportLab中创建pdf,我有以下代码但我有几个问题,第一个是我想要的要有一个2xn的列表,它总是有列和行根据json是动态的。 如果有人能帮助我多多感激

import json

json_data = []
attributesName = []
testTable = { "attributes":[] }
attributesValue = []
path="prueba2.pdf"
doc = SimpleDocTemplate(path, pagesize=letter)
styleSheet = getSampleStyleSheet()
text = []
with open("prueba.json") as json_file:
document = json.load(json_file)
for item in document:
    for data_item in item['data']:
        attributesName.append([str(data_item['name'])
        attributesValue.append([data_item['value']])
        testTable[attributesName].extend({data_item['name'], data_item['value']})
print attributesName[0]
print testTable[0]
           parts = []
p = Paragraph('''<para align=left fontsize=9>{0}</para>'''.format(text), styleSheet["BodyText"])
parts.append(p)
doc.build(parts)

我实现了以下内容,但它打印了列表

[[['RFC', 'NOMBRE', 'APELLIDO PATERNO', 'APELLIDO MATERNO', 'FECHA NACIMIENTO', 'CALLE', 'No. EXTERI
OR', 'No. INTERIOR', 'C.P.', 'ENTIDAD', 'MUNICIPIO', 'COLONIA',    'DOCUMENTO']], [['MORR910304FL2', 'R
JOSE', 'MONTIEL', 'ROBLES', '1992-02-04', 'AMOR', '4', '2', '55064', 'EDO DE   MEX', 'ECATEPEC', 'INDUSTRIAL', 'Documento']]]

我想要一些这样的

[['RFC'], ['22232446']]
[['NOMBRE'], ['22239952']]
[['APELLIDO'], ['22245430']]

1 个答案:

答案 0 :(得分:1)

如果您使用下一个代码更改代码

 with open("prueba.json") as json_file:
    document = json.load(json_file)
    for item in document:
       for data_item in item['data']:
         attributesName.append(str(data_item["name"]))
         attributesValue.append(str(data_item["value"]))
         tabla.append([[attributesName],[attributesValue]])
    print attributesName
    print attributesValue
 for Y in tabla:
    print(Y)