z = []
for k, v in b.iteritems():
if v == "Supplementary Assignment, Smith, Bowen":
z.append(not k)
Здравствуйте, я пытаюсь перебрать значения в dict. Целью здесь является z.append()
все ключи в 'b
', которые не содержат множество значений, определенных для v
в инструкции if
. Итак, если dict 'b
' содержит пару ключ/значение, значение которого было «Смит», тогда этот ключ будет исключен из вызова z.append()
, тогда как все остальные ключи будут добавлены. Спасибо за любую помощь, которая приходит мне на ум!Python; Словарь итерация
ОК отлично, спасибо Martijn. Я знал, что близко, но не знал о ключевых словах. Отлично, еще раз спасибо! – philthy
Может быть, неправильно ... но не лучше ли было бы помещать это '{" Дополнительная "," Назначение "," Смит "," Боуэн "} в переменную, чтобы вы не воссоздавали ее несколько раз в список comp? – iCodez
@iCodez: Это постоянный; загрузка происходит довольно быстро. В Python 3.3 и выше он будет * * устанавливать * константу, в версиях до этого он будет загружать строки как константы и выполнять «BUILD_SET» каждую итерацию цикла. Загрузка константы происходит так же быстро, как загрузка локального. –