cari

Rumah  >  Soal Jawab  >  teks badan

算法 - 一道python题目:如何把元组编程字典?

问题:

我有一个元组列表:

现在我想把这组元组变成字典的列表,类似的效果是这样:

meat = [
    {
    "地区词":"深圳福田区",
    "品牌词":"TTM全身体检",
    "疑问词":"地址怎么走",
    "价格词":"价格要多少钱"
    },
    {
    "地区词":"深圳保安区",
    "品牌词":"TTM全身体检",
    "疑问词":"地址怎么走",
    "价格词":"要做多少项目"
    },
    .....
        ]

有什么比较方便的方法?

ringa_leeringa_lee2773 hari yang lalu716

membalas semua(5)saya akan balas

  • 怪我咯

    怪我咯2017-04-18 09:08:51

    Kaedah @dokelung boleh menjadi lebih ringkas

    names = 'area brand question price'.split()
    lst = [dict(zip(names, t)) for t in tlst]

    balas
    0
  • 大家讲道理

    大家讲道理2017-04-18 09:08:51

    names = 'area brand question price'.split()
    lst = [{name:value for name, value in zip(names, t)} for t in tlst]

    Ujian:

    tlst = [('a1','b1','q1','p1'),
            ('a2','b2','q2','p2'),
            ('a3','b3','q3','p3')]
     
    names = 'area brand question price'.split()
    lst = [{name:value for name, value in zip(names, t)} for t in tlst]
    
    print(lst)

    Keputusan:

    [{'brand': 'b1', 'area': 'a1', 'question': 'q1', 'price': 'p1'}, {'brand': 'b2', 'area': 'a2', 'question': 'q2', 'price': 'p2'}, {'brand': 'b3', 'area': 'a3', 'question': 'q3', 'price': 'p3'}]

    Soalan yang saya jawab: Python-QA

    balas
    0
  • 迷茫

    迷茫2017-04-18 09:08:51

    Tulisan ringkas: (a ialah susunan tupel)

    meat = [{'地区词':t[0], '品牌词':t[1], '疑问词':t[2], '价格词':t[3]} for t in a]

    Sudah tentu anda juga boleh mencuba kaedah pemetaan, yang tidak disebutkan di sini

    balas
    0
  • 天蓬老师

    天蓬老师2017-04-18 09:08:51

    Untuk menonjolkan diri secara paksa, gunakan ungkapan $lambda$ untuk menulis:

    list(map(lambda x: {'地区词':x[0], '品牌词':x[1], '疑问词':x[2], '价格词':x[3]}, a))

    Sila abaikan jawapan saya. . .

    balas
    0
  • 迷茫

    迷茫2017-04-18 09:08:51

    Penyelesaian yang betul di atas ialah membentuk kamus berasingan, dan kemudian panggil penambahan tatasusunan dan ia akan menjadi ok

    balas
    0
  • Batalbalas