Форум сайта python.su
0
Пытаюсь описать нижеследующий кусок в виде итератора, и у меня не получается.
pop_list = [] for entity in list1: #как это описать с помощью итератора? for subentity in entity.list2: if subentity not in list1 and subentity.property: pop_list.append(subentity)
pop_list = [subentity for entity in list1 for subentity in entity.list2 if subentity not in list1 and subentity.property]
Офлайн
52
За что я люблю python, так это то, что абсолютно на любом уровне изучения он может радовать вас подобными вещами :)
Я вот, например, совсем недавно узнал о методе ‘mro’ у класса (до этого пользовался inspect.getmro).
>>> class A(object): ... pass ... >>> class B(A): ... pass ... >>> B.mro() [<class '__main__.B'>, <class '__main__.A'>, <type 'object'>] >>> import inspect >>> inspect.getmro(B) (<class '__main__.B'>, <class '__main__.A'>, <type 'object'>)
Офлайн