У меня головная боль с этим кодом Python.
print "length:", len(pub) # length: 420
pub_dict = dict((p.key, p) for p in pub)
print "dict:", len(pub_dict) # length: 163
Если я правильно понимаю, я получаю словарь, содержащий атрибут p.key
в качестве ключа и объект p
в качестве его значение для каждого элемента pub
. Есть ли какие-то побочные эффекты , которых я не вижу? Поскольку len (pub_dict)
должно быть таким же, как len (pub)
, и его здесь точно нет, или я ошибаюсь?