나는이 문구를 어떻게 표현할 지 잘 모르겠습니다. 오해의 소지가 있거나 중복되는 경우 미안합니다. 그것은 간단하다 내가 이러한 개체 중 하나가 가지고있는 대부분의 사과를 찾으려면개체가 일부 기준을 충족하는 개체 목록에서 개체를 검색하는 올바른 방법
class MyClass(object):
def __init__(self, num_apples):
self.apples = num_apples
a = MyClass(1)
b = MyClass(3)
c = MyClass(2)
:
group = [a, b, c]
most_apples = max([g.apples for g in group]) # == 3
하지만 무엇을 내가 원하는 경우
내가 클래스가 있다고 가정하자 3 대신 3 사과가있는 개체를 검색 할 수 있습니까? 나는 다음과 같이 할 수있다 :
has_most_apples = [g for g in group if g.apples == most_apples][0] # == b
내 질문은 이렇다. 좀 더 우아하고 파이썬적인 방법이 있는가?
사실 이제이 글을 작성 했으므로 그렇게 나쁘지 않습니다. 그래도 질문은 여전히 유효합니다. 나는 :) 궁금
브릴리언트, 나는 핵심 논쟁에 대해 몰랐다. 작은 설명도 주셔서 감사합니다. – moarCoffee