考虑到我有一个诸如“579700068780000000
”的数字。我想只计算数字中的尾随0
。因此,对于上述数字,答案为7
而不是10
。我完全不知道如何才能做到这一点。
我尝试使用.count
函数,但它返回数字中的所有0。
注意:这是codechef练习挑战Codechef factorial problem
的一部分答案 0 :(得分:5)
你可以做一些愚蠢的事情:
len(number) - len(number.rstrip('0'))
或者,您可以使用itertools.takewhile
:
sum(1 for _ in itertools.takewhile(lambda x: x=='0',reversed(string))
但是,这可能不如rstrip
案例效率高。