2022年 11月 8日

python如何去掉小数位的o,Python如何删除小数?

I’ve found some other topics on this but I couldn’t get it to work. Please pardon my naivety with Python.

Berekening1 = 8.5

Berekening2 = 8.1+4.8

Berekening3 = 8*10

Berekening4 = 3

x = Berekening1 * Berekening2 * Berekening3 + Berekening4

print “Het antwoord van de berekening is:”,

round(x); print x,

print “.”

I want x to be an integer. How do I do that? I tried both int and round.

Anyone also have an idea on how to remove the “space” between x and “.” at the end when code is executed?

解决方案

You would need to reassign x to the value of x = int(x) or you could also use str.format if you just want the output formatted:

print “Het antwoord van de berekening is: {:.0f}.”.format(x)

int and round will exhibit different behaviour, if you have anything >= 5 after the decimal point then int will floor but round will round up, if you want to actually use round you might want to combine the two:

In [7]: x = round(1.5)

In [8]: x

Out[8]: 2.0

In [9]: int(x)

Out[9]: 2

Or again combine with str.format:

In [10]: print “Het antwoord van de berekening is: {:.0f}”.format(round(1.5))

Het antwoord van de berekening is: 2