Python:从字典列表中获取键列表的值

时间:2017-05-16 11:34:18

标签: python list dictionary

我有

列表
List=[{'ManufStr': '',
       'ProdStr': 'QWER1025',
       'SerialNum': 'ABCDEF0123456789',
       'VendorID': '0xa34',
       'ProdID': '0x4007'},
      {'ManufStr': '',
       'ProdStr': 'ASDF452x',
       'SerialNum': 'ABCDEF0123456789',
       'VendorID': '0xa34',
       'ProdID': '0x4007'}]

如何获取VendorID,ProdID和ProdStr的值,然后将它们连接在一起制作一个字符串? 例如VID0xa34&PID0x4007 ASDF452x

5 个答案:

答案 0 :(得分:1)

试试这个:

>>> ['VID' + item['VendorID'] + '&PID' + item['ProdID'] + ' ' + item['ProdStr'] for item in List]

对于您在上面提供的List,它会输出:

['VID0xa34&PID0x4007 QWER1025', 'VID0xa34&PID0x4007 ASDF452x']

希望它有所帮助!

答案 1 :(得分:0)

您需要遍历列表中的词典。

for item in List:
    print "VID{}&PID{} {}".format(
        item["VendorID"], item["ProdID"], item["ProdStr"])

答案 2 :(得分:0)

什么是大量的字符串模板和列表理解?

infos = ( 'VID{}&PID{} {}'.format(item['VendorID'], item['ProdID'], item['ProdStr']) for item in List )

答案 3 :(得分:0)

`print ['VID' + item['VendorID'] + '&PID' + item['ProdID'] + '  ' + item["ProdStr"] for item in List]`

输出:['VID0xa34PID0x4007 QWER1025', 'VID0xa34PID0x4007 ASDF452x']

答案 4 :(得分:0)

尝试这样的事情,

result = []
for item in List:
    all_string = "VID{}&PID{}{}".format(item['VendorID'], item['ProdID'], item['ProdStr'])
    result.append(all_string)