2013-06-06 3 views
0

"579700068780000000"과 같은 숫자가 있다고 생각하시면됩니다. 숫자에 후행 0 만 넣고 싶습니다. 따라서 위의 숫자는 7이 아니고 10이 아닙니다. 나는 그것을 어떻게 할 수 있을지 전혀 모른다.숫자/문자열의 후행 요소 만 계산하십시오.

.count 함수를 사용해 보았지만 숫자에 0을 모두 반환했습니다.

참고 : 또는

len(number) - len(number.rstrip('0')) 

, 당신이 사용할 수 itertools.takewhile :

sum(1 for _ in itertools.takewhile(lambda x: x=='0',reversed(string)) 

이것은 codechef 연습 문제의 일부 Codechef factorial problem

답변

5
당신이 바보 같은 뭔가를 할 수

입니다 그러나 이것은보다 효율적이지 않을 수 있습니다케이스.

+0

당신은 저를 때려칩니다. – karthikr

+0

어리석은 이유는 무엇입니까? 최고의 솔루션과 같은 소리. – Elazar

+0

@mgilson - 첫 번째 솔루션은 훌륭했습니다! 나는 itertools에 들어가고 싶지 않다. 아직 기본 지식이별로 좋지 않다. –

관련 문제