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不錯的抓,我相信這應該修復它 –