2015-09-28 5 views
1

У меня есть этот вывод для словаря и вы хотите извлечь определенный список «например: HolderJob» в список без использования для цикла?Листинг словаря без использования для цикла

{u'RecipeName': u'APC_14A_COC_Al2O3_Fill-TEST', u'PalletPosition': u'1', u'IsSPC': u'N', u'Holder': u'23002154-1', u'PalletName': u'12', u'IsControl': u'N', u'LoadPosition': u'5', u'RunNumber': u'4613', u'ProcessToolName': u'DLCX01', u'MeasurementType': u'XRF', u'HolderJob': u'243340545'} 
{u'RecipeName': u'APC_14A_COC_Al2O3_Fill-TEST', u'PalletPosition': u'1', u'IsSPC': u'N', u'Holder': u'23002158-1', u'PalletName': u'12', u'IsControl': u'N', u'LoadPosition': u'9', u'RunNumber': u'4613', u'ProcessToolName': u'DLCX01', u'MeasurementType': u'XRF', u'HolderJob': u'243340544'} 

Текущий код:

aList=[] 
for palletload in a['XMLSchemaPalletLoadTechData']['TechDataParams']: 
     aList.append(palletload['HolderJob']) 
print aList 

ответ

3

Вы можете использовать функцию map и operator.itemgetter, как это функция:

>>> from operator import itemgetter 
>>> map(itemgetter('HolderJob'), a['XMLSchemaPalletLoadTechData']['TechDataParams']) 
>>> [u'243340545', u'243340544'] 
+0

здорово! ответьте за быстрый ответ. У меня есть другое решение, любезно проверяйте, также ли хорошие промежутки времени. \t aList = [int (palletload ['HolderJob']) для палитры в newpaldt ['XMLSchemaPalletLoadTechData'] ['TechDataParams']] \t print aList – iamcoder

Смежные вопросы