2017-03-17 90 views
0

Python的新增功能和一般編碼。教我自己並在Python中使用各種輸出。我今天搞亂了,並試圖計算兩個我認爲是字符串值的浮點格式。在Python中添加包含整數的兩個字符串值

a = "%.2f" %x + str(float(14.00)) 

返回 '3.3514.0'

a = "%.2f" %x , str(float(14.00)) 

回報( '3.35,'14 0.0')

我能夠在這兩個值分開,但我沒能得到適當的計算17.75的值。我想將x(其中= 3.3456),舍入到小數點後兩位(「%.2f」%x)取浮點值14.00(float(14.00))並將它們相加,然後用a。 A = X到小數點後兩位+浮動(14.00)。 我在做什麼錯?

-Alfa

+0

您不能添加字符串來期望數字加法。它們都應該是'float'或'int'。如果兩者都是'str',那麼就不會有數字加法。 – Rohanil

回答

0

a = "%.2f" %x + str(float(14.00)) 

a = ""%.2f" % str(float(14.00)) 

或更好(doc

'here {} '.format(str(float(14.00))) 
1

試試這個
A =浮動( 「%2F」 %X)+浮動(14.00)

0

在你只是想Concat的這兩個字符串的第一個案例。在Python中用於字符串的'+'意味着'在第一個字符串的末尾添加第二個字符串',所以這就是爲什麼你會得到難看的結果。我會建議值計算出來的字符串,下次使用字符串格式化的,但如果你必須這樣做,它可以是這樣的:

a = '%.2f' % str(float_value1 + float_value2)` 

更好的解決方案是使用.format,有人提及。

+0

非常感謝大家。通過你的回答和今天的價值思考,我發現第一個價值確實是一個字符串,這就是爲什麼我無法理解問題是什麼。再次,非常感謝你。 – AlfaMas

相關問題