2013-10-10 2 views
0

에 산술 플로트 후속 오류 :튜플은 /이 간단한 표현을 위해 파이썬

polyResult = polyResult + float(poly[len(poly)-1:]) 

float() argument must be a string or a number 

polyResult += float(poly[len(poly)-1:])도 성공하지 못했습니다.

호출되는 튜플 값이 부동 소수점임을 감안할 때 값이 숫자가 아님을 나타내는 오류가 나타나는 이유를 이해할 수 없습니다. 내가 뭘 놓치고 있니?

+1

이 표현은'poly [len (poly) -1 :]'은 폴리의 마지막 요소를 추출하여 터플로 감싼다. 튜플의 마지막 항목을 얻으려고한다면'poly [-1]'을 대신 사용하십시오. 그럼에도 불구하고,'폴리'에 저장된 것을 보는 것이 도움이 될 것이다. – mdml

+1

튜플의 각 요소에 부동 소수점을 추가하려고하면 'tuple (my_tuple의 i에 대해 addend + i)'를 명시 적으로 수행해야합니다. 물론 하나의 float이 아닌 하나의 float 튜플을 반환합니다. (이것을 코멘트로 추가하는 것은 내가 원하는 것을 생각하지 않기 때문에 '폴리'의 마지막 요소를 얻고 싶습니다.) – abarnert

+0

감사합니다. 나는 튜플에서 인덱싱 : 값이 목록 형태로 도착할 것입니다. 단순히 다음을 제거하면 : 호출이 값만 리턴하고 표현식은 해결할 수 있습니다. – jmike

답변

4

는 아마도

poly[len(poly)-1:] 

poly[len(poly)-1] 

이상 단순히

poly[-1] 
0

가 있습니까 의미 아마도 poly

튜플에서 튜플을 분할합니다 당신은 찾고 :

polyResult += sum (poly) 
+0

대답을 확장하여 질문자에게 왜 이것이 원하는 결과를 얻었는지 설명하고 가능하면 문서에 연결하는 것을 고려하십시오. 사실, 이것은 단지 약간 유용합니다. –

관련 문제