Я пытаюсь сравнить список со значением словаря, а затем распечатать сравнение по-разному с остальными.Сравнение списков и словарей правильно
Я беру список в этом формате:
list_1 = ['hostname ipaddress', 'hostname ipaddress']
Я затем раскалывают его в словаре:
new_dict = {'hostname': 'ipaddress', etc}
Я тогда принимает еще один список «предметов, представляющих интерес»:
list_interest = ['hostname', 'hostname']
для сравнения с ключом словаря значение. Если есть совпадение, я хочу напечатать сопоставленный элемент со специальным форматированием, если нет совпадения, просто напечатайте элемент с нормальным форматированием.
В настоящее время я просто пытаюсь получить print 'yes'
и print item
, чтобы убедиться, что логика работает. Но, как вы видите, мой мыслительный процесс не работает. Я бы предположил, что есть лучший способ справиться с этой проблемой? Я понимаю, почему я получаю дубликаты, я просто не знаю, как еще справиться с этим.
Код проверки
new_dict = dict((x.split(' ') for x in list_1))
for item in new_dict:
for interest in list_interest:
if new_dict.has_key(interest):
print "yes"
else:
print "\t", item
выход Код
hostname1
hostname1
hostname1
yes
hostname2
hostname2
etc
Рабочий код После после принятия на борту Мартейн Питерс исходного примера.
new_dict = dict((x.split(' ') for x in list_1))
for item in new_dict:
if item in interest:
print "yes"
else:
print "\t", item, new_dict[item]
Что вы пытаетесь проверить? Вы пытаетесь проверить, находится ли каждый ключ в словаре в списке интересов? или если каждый элемент в списке интересов находится в словаре? –
Какой вывод вы ожидаете? – frmdstryr