C
속성 이있는 클래스가 있다고 가정 해 봅시다 a
.
Python a
의 목록에서 합계를 얻는 가장 좋은 방법은 무엇입니까 C
?
다음 코드를 시도했지만 올바른 방법이 아니라는 것을 알고 있습니다.
for c in c_list:
total += c.a
답변
용도 발전기 표현 :
sum(c.a for c in c_list)
답변
합계 이외의 측정 값 (예 : 평균 / 표준 편차)을 찾고 있다면 NumPy를 사용하여 다음을 수행 할 수 있습니다.
mean = np.mean([c.a for c in c_list])
sd = np.std([c.a for c in c_list])
답변
비슷한 작업이 있었지만 내 속성으로 기간을 합산하는 것이 포함되었습니다 c.a
. 이것을 여기 에서 묻는 다른 질문과 결합 하여
sum((c.a for c in cList), timedelta())
링크에서 언급했듯이 sum
시작 값이 필요하기 때문입니다.
답변
내장 statistics
모듈 사용 :
import statistics
statistics.mean((o.val for o in my_objs))