my_list = [ {"type": "animals", "number": "2337 24", "name": "Берта"}, {"type": "people", "number": "921-241", "name": "Ваня Пупкин"}, {"type": "people", "number": "103126", "name": "Петя Пупкин"} ] # Т.к. у словарей в Python нет определенного порядка ключей, то нужно явно задать в каком порядке получать значения: keys = ('type', 'number', 'name') # Выводим тройки значений for item in my_list: print(tuple(item[key] for key in keys)) # ('animals', '2337 24', 'Берта') # ('people', '921-241', 'Ваня Пупкин') # ('people', '103126', 'Петя Пупкин') # Если не нужно выводить, а нужно сформировать список: s = [tuple(item[key] for key in keys) for item in my_list] # Просто вывести значения из словарей в "произвольном" порядке # в моем случае выводит в порядке number - name - type, но на данный порядок полагаться нельзя for item in my_list: print(tuple(item.values())) # ('2337 24', 'Берта', 'animals') # ('921-241', 'Ваня Пупкин', 'people') # ('103126', 'Петя Пупкин', 'people')
number-[tuple(x.values()) for x in my_list if x['number'] == '2337 24']- MaxU