Python ronde ()

De functie round () retourneert een getal met drijvende komma afgerond op het opgegeven aantal decimalen.

De syntaxis van de round()functie is:

 rond (getal, ncijfers)

round () Parameters

De round()functie heeft twee parameters:

  • getal - het aantal dat moet worden afgerond
  • ncijfers (optioneel) - getal waarop het opgegeven getal is afgerond; is standaard 0

Retourwaarde van round ()

  • Als ndigitsdit niet is opgegeven, round()wordt het dichtstbijzijnde gehele getal geretourneerd naar het opgegeven getal.
  • Als ndigitsis gegeven, round()retourneert het getal afgerond op de ndigitscijfers.

Voorbeeld 1: Hoe werkt round () in Python?

 # for integers print(round(10)) # for floating point print(round(10.7)) # even choice print(round(5.5))

Uitvoer

 10 11 6

Voorbeeld 2: Rond een getal af op het opgegeven aantal decimalen

 print(round(2.665, 2)) print(round(2.675, 2))

Uitvoer

 2,67 2,67

Opmerking : het gedrag van round()voor drijvers kan verrassend zijn. Kennisgeving round(2.675, 2)geeft in 2.67plaats van verwacht 2.68. Dit is geen bug: het is een gevolg van het feit dat de meeste decimale breuken niet exact kunnen worden weergegeven als een vlotter.

Wanneer het decimaalteken 2.675wordt geconverteerd naar een binair getal met drijvende komma, wordt het opnieuw vervangen door een binaire benadering, waarvan de exacte waarde is:

 2,67499999999999982236431605997495353221893310546875

Hierdoor wordt het naar beneden afgerond op 2,67.

Als u zich in een situatie bevindt waarin deze precisie nodig is, overweeg dan om de decimalmodule te gebruiken, die is ontworpen voor drijvende-kommaberekeningen:

 from decimal import Decimal # normal float num = 2.675 print(round(num, 2)) # using decimal.Decimal (passed float as string for precision) num = Decimal('2.675') print(round(num, 2))

Uitvoer

 2,67 2,68

Interessante artikelen...