【发布时间】:2012-06-02 05:30:58
【问题描述】:
我有一个字符串,稍后将使用int() 进行转换。它是三位数字,其中 0 到 3 个可能是 0。如何从字符串的左侧去除 0?
现在我使用的是string.lstrip('0'),但这会去掉所有的 0 并使字符串为空,从而导致错误。
【问题讨论】:
-
我喜欢这个问题“什么是从字符串前面去除 0 的 pythonic 方式”,但你说稍后它将用
int()转换似乎完全是红鲱鱼。它与这个问题有什么关系吗?因为int不会关心前导零。 -
@RayToal:他的意思是他想要去除前导零并且结果必须是
int(s)的有效输入。后者当然是自动的,只要您正确执行第一步。 -
如果您关心的只是读取为八进制的数字(就像在您的 cmets 中对 ignacio 的回答一样):
int在 python 中不会这样做。int('010')将是10,int('010', 0)应该是8。如果您想具体说明,请使用int('010', 10)。
标签: python