python – 如何将数字的格式复制到另一个数字?

我有以下内容:

strA = '0.8243'
strB = '12.3'
strC = float(strA) + float(strB)

print strC # 13.1243...I want it formatted like that of strB...13.1

strA和strB将改变,并且将具有未知的小数位数.但是,我总是希望小数位保留strB的位数.那可能吗?

注意:如果strB =’12’,则float(strB)= 12.0 …在这种情况下我不想要小数(例如匹配原始字符串)

最佳答案

strA = '0.8243'
strB = '12.3'
C = float(strA) + float(strB)
print '{:.{}f}'.format(C, len(strB.partition('.')[2]))

产量

13.1
点赞