На самом деле можно «заглянуть» в список, построенный в понимании списка.самый внешний список имеет имя _[1]
, которое, конечно, не является допустимым идентификатором Python, поэтому к нему нужно обращаться по-другому:
def roulette(self):
return [drink.fitness + (locals()['_[1]'][-1] if locals()['_[1]'] else 0)
for drink
in self.drinkList]
Но только потому, что вы можете ,не означает, что вы должны ;продолжайте свой цикл for
, он выглядит точно так же, как и делает, а также не использует недокументированную функцию Python.