簡體   English   中英

浮點數python 3+

[英]Float numbers python 3+

print ('%0.2f'+ % userUSD + '= %0.2f' + %Euro + 'Euro')

我正在使用python 3.3,並且在制作一個非常簡單的貨幣轉換器時,偶然發現了此語法錯誤。 你們能告訴我在這種情況下如何解決這個問題並寫出正確的方法來打印浮點數嗎?

語法錯誤是因為您同時使用+%運算符。 當您使用%進行字符串格式設置時,您不需要在格式字符串及其參數之間加上+

因此,最基本的解決方法是擺脫多余的+

print ('%0.2f' % userUSD + '= %0.2f' % Euro + 'Euro')

但是,將格式字符串組合在一起,並僅執行一種格式化操作可能更有意義:

print('%0.2f = %0.2f Euro' % (userUSD, Euro))

盡管通常建議在新代碼中使用功能更強大的str.format格式化系統,而不是%運算符:

print('{:.2f} = {:.2f} Euro'.format(userUSD, Euro))
print ('%0.2f USD = %0.2f Euro' % (USD, Euro))

這是使用str.format()編寫Python 3格式的字符串的正確方法:

print("{:0.2f} = {:0.2f} Euro".format(userUSD, Euro))

分解為每個位置值並將其格式化為兩位小數,就像上面的%

print ('%0.2f USD = %0.2f Euro' % (USD, Euro))

格式化的字符串放在一對引號內。 然后,這些變量以列表形式出現在%符號之后。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM