2017-03-01 120 views
2

非常快的問題。使用.format將浮點數轉換爲整數

x = 10 
print("value is {:d}".format(x)) 

回報,另一方面

value is 10 

x = 10.0 
print("value is {:d}".format(x)) 

回報

ValueError: Unknown format code 'd' for object of type 'float' 

爲什麼犯規這項工作?

+0

改用'print(「value is {:f}」.format(x))'https://pyformat.info/ –

回答

1

您將使用f而不是d浮動。然後指定精度寬度0:

>>> print("value is {:.0f}".format(x)) 
value is 10 
1

從Python文檔:'d' Decimal Integer. Outputs the number in base 10. 它將輸出基地10的數量,這就是爲什麼你所得到的ValueError