在Python format()
函數中是否有任何格式說明符可用於從小數部分中獲取指定數量的數字而沒有點?Python格式()函數中是否有任何格式說明符來獲取沒有點的小數部分?
例如,我想從浮標0.86
只得到86
。
編輯: 我現在做的解決方法是這樣的:
"{:.0f}".format(num*100)
答案到目前爲止提出這樣的一個或使用字符串操作的解決方法。我知道這些解決方案。我所要求的是,如果只有格式說明符才能做到這一點。
在Python format()
函數中是否有任何格式說明符可用於從小數部分中獲取指定數量的數字而沒有點?Python格式()函數中是否有任何格式說明符來獲取沒有點的小數部分?
例如,我想從浮標0.86
只得到86
。
編輯: 我現在做的解決方法是這樣的:
"{:.0f}".format(num*100)
答案到目前爲止提出這樣的一個或使用字符串操作的解決方法。我知道這些解決方案。我所要求的是,如果只有格式說明符才能做到這一點。
我沒有意識到str.format中有什麼特定的東西可以用來完成這個任務,但這是我如何去做的。
您可以將浮點數轉換爲一個整數,該整數會將浮點數右移十進位。然後減去它們,你應該只得到小數部分。
my_float = 12.12121200
print("Just the decimal: {0}".format(
int(str(my_float - int(my_float)).split(".")[1])
))
你可能.replace
?
如
decimal = .85
int(str(decimal).replace('.', ''))
這不是一個.format思想,希望它可以幫助反正。
不會'替換'只適用於'str'類型? – Mangohero1
@ mangoHero1 ahhh!我忘了把它變成一串... – Nova
現在好了。 :) – Mangohero1
只需乘以100? – Li357
'「{0:g}」。格式(num).split(「。」,1)[ - 1]'是一種方法....我猜 –
@AndrewLi,這是我現在遵循的解決方法解決這個問題。 – pgmank