Wie rufe ich ganze Zahlen auf das höchste Vielfache von 10, nicht runden nur runden, in Python

Ich bin schon seit einiger Zeit auf mich geklebt, ich bin auf viele verschiedene runde Funktionen gestoßen, aber sie runden schwimmt oder runter auf und ab, ich suche einen Weg, um mich zu runden, auch wenn die Nummer 61 ist, dann ist es bis zu 70 Gibt es einen Weg, den ich in Python machen kann

  • Wie kann ich verhindern, dass csv.DictWriter () oder writerow () runden meine Schwimmer?
  • Wie gehe ich NUR um eine Nummer / float in Python?
  • Abrundung einer Zahl in Python, aber beendende Nullen
  • Runder Schwimmer zu x Dezimalstellen?
  • Runde () in Python scheint nicht richtig zu runden
  • Warum stürzt sich Str () auf?
  • Python 2.7: um einen schwimmer bis zur nächsten geraden nummer
  • Wie rufst du eine Nummer in Python?
  • 4 Solutions collect form web for “Wie rufe ich ganze Zahlen auf das höchste Vielfache von 10, nicht runden nur runden, in Python”

    Ich denke, das sollte gut funktionieren

    ceil(61 / 10) * 10 

    Sie können den Modul-Operator verwenden, der die gegebenen Zahlen teilt und den Rest erzeugt:

     def rounder(num, d): return num - num % -d 

    Ergebnis:

     >>> print(*('{}: {}'.format(n, rounder(n, 10)) for n in range(15)), sep='\n') 0: 0 1: 10 2: 10 3: 10 4: 10 5: 10 6: 10 7: 10 8: 10 9: 10 10: 10 11: 20 12: 20 13: 20 14: 20 

    Du suchst die Deckenfunktion, die immer runden wird

     import math def roundupby(n, by): return math.ceil(n / by) * by print (roundupby(61, 10)) 

    Verwenden Sie einfach modulo operator.

     number += (number%10) and (10 - number%10) 
    Python ist die beste Programmiersprache der Welt.