有什么有效的方法可以将重复的结束字符保留在给定的数量中? (如反向 strip )(我找不到快速的方法)
例如
数字='184950273400000'
print((数字).strip('0'))
结果是1849502734
但我想知道如何有效地删除 0 之前的所有内容,而不是删除 0。所以结果将是 00000。
在这种情况下len(number)
将== 5
我想知道是否有类似反向 strip 的东西,因为我正在尝试找到重复末尾数字的长度。
最佳答案
您可以使用reversed
函数高效地将字符串生成为倒序序列,这样您就可以使用itertools.takewhile
仅输出该字符串的前导字符通过'0'
的相等方法等于'0'
,然后将字符连接起来输出:
from itertools import takewhile
''.join(takewhile('0'.__eq__, reversed(number)))
这可以避免迭代导致尾随零的字符串的任何(可能很长)部分。
关于python - 有效删除除重复结束字符之外的所有内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54991831/