1
假设我有数字字符串。我想删除所有的尾随零和小数点,如果有必要。例如 -从Python中的数字字符串中删除零
'0.5' -> '.5'
'0005.00' -> '5'
我用这个方法:
s.strip("0") # where 's' contains the numeric string.
但对于0005.00
,它返回5.
,所以我会如何,如果必要去掉小数点。
假设我有数字字符串。我想删除所有的尾随零和小数点,如果有必要。例如 -从Python中的数字字符串中删除零
'0.5' -> '.5'
'0005.00' -> '5'
我用这个方法:
s.strip("0") # where 's' contains the numeric string.
但对于0005.00
,它返回5.
,所以我会如何,如果必要去掉小数点。
要做到这一点,你可以写一个小功能
def dostuff(s):
s = s.strip('0')
if len(s) > 0 and s[-1] == '.':
s = s[:-1]
return s
这条所有0
S和如果.
被发现,它是在字符串的结尾(意味着其小数点和没有任何跟着它),它也会使用[s:-1]
(这剥去最后一个字符)去掉它。
s[-1]
获取字符串的最后一个字符。有了这个,我们可以检查.
是否是最后一个字符。
这可以用更少的代码使用正则表达式来实现,但我认为这是容易按照
演示
>>> print dostuff('5.0')
5
>>> print dostuff('005.00')
5
>>> print dostuff('.500')
.5
>>> print dostuff('.580')
.58
>>> print dostuff('5.80')
5.8
@DSM不错的抓,我相信这应该修复它 –