2009-09-11 10 views
27

Je veux arrondir mes valeurs décimales comme ci-dessous:arrondir les décimales dans Django

7,715.625 devient 7716

Comment puis-je y parvenir?

+1

Note: le filtre modèle "intcomma" utilisé dans la solution fait partie de django.contrib.humanize, voir http://docs.djangoproject.com/en/dev/ref/contrib/humanize/ –

Répondre

59

Si vous ne se soucient pas des virgules, puis floatformat fera le travail:

{{ value|floatformat:"0" }} 

Si vous souciez des virgules, vous voulez:

{{ value|floatformat:"0"|intcomma }} 

(Pointe du chapeau à Stephen pour me pointer à intcomma!)

+0

floatformat va me donner une décimale ... J'ai essayé ça en premier. Je dois avoir ma valeur sans aucune décimale –

+0

@Stephen - Voir mon edit. –

+0

doux ... ne savait pas sur le floatformat: "0". merci –

7

Pour utiliser le filtre intcomma, vous devez ajouter django.contrib.humanize à votre INSTALLED_APPS en réglant un sd {% load humanize %} dans un modèle.

0

Vous pouvez le faire avec le ci-dessous sur django, l'argument "0" l'arrondit pour exclure les décimales, mais vous pouvez le changer.

number = 7715.625 
rounded_number = round(number,0) 
Questions connexes