2017-05-07 6 views
-1

바보 같은 질문에 죄송합니다.
목록을 요약하고 싶습니다. 그러나 목록의 길이는
보다 더 큰 2 그래서 reducelen<2파이썬 합계 길이가 임의의 배열

이 내 코드의 경우

score = [('xxx', 1), ('yyy', 2)] 
if len(score) >=2: 
    result = reduce((lambda x,y:x[1]+y[1]), score) 
elif len(score)==1: 
    result = score[0] 
else: 
    result = 0 

이 목록의 길이가에서보다 더 큰 2 때마다 배열을 요약 할 수 있습니다 실패 항상 아닙니다 우아한 방법?

+1

'결과 = 스코어 [0] [1] ' – JJJ

+0

줄이거 람다 함수 말이 없음이 어떤 기간 동안 작동하지 않을 것이다. 이제 단순한'reduce (lambda total, cur : cur [1] + total, score, 0) '가됩니다. – Voo

+0

@Voo는 저에게 가르쳐 주셔서 감사합니다. 도와 주셔서 감사합니다 ~~ –

답변

5

sum있다 :

result = sum(s[1] for s in score) 
+0

감사합니다, 바보 같은 질문에 대한 미안 하하 –