IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

[format d'un "float"]


Sujet :

Python

  1. #1
    Membre averti
    Inscrit en
    Février 2006
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 16
    Par défaut [format d'un "float"]
    Bonjour,

    J'ai un problème qui me semble trés simple mais dont je ne trouve pas la solution. Je fais des calculs avec une variables "float" et j'aimerai recupérer uniquement le résultat avec 2 ou 3 chiffres après la virgule. J'ai essayé de faire comme cela:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    g=float(int(x*1000)/1000)
    Mais ça ne marche pas! il m'affiche un entier avec toujours un zéro après la virgule (ex: 2.0 au lieu de 2.124).
    Est-ce qu'il y a une fonction qui va bien???

    Merci d'avance

  2. #2
    Expert confirmé
    Avatar de Guigui_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2002
    Messages
    1 864
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2002
    Messages : 1 864
    Par défaut
    tu peux utiliser la fonction round
    et tes int/float était mal placé

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    >>> x = 2124.54654
    >>> g=round(float(x*1000)/1000,3)
    Attention, quand tu affiches la valeur, il se peut qu'il te l'écrive avec un tas de zéros derrière et un 1 (mais c'est juste la représentation écrite du nombre (mais pas celle en mémoire)
    http://www.developpez.net/forums/sho...ighlight=round

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    119
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 119
    Par défaut
    Autant faire

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    >>> x = 2124.54654
    >>> g=round(x,3)
    Non ??
    Le jeu de float/int ne sert plus à rien.

  4. #4
    Membre averti
    Inscrit en
    Février 2006
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 16
    Par défaut
    avec "round" ça marche!!
    merci pour vos réponses rapides!!!

    A+

+ Répondre à la discussion
Cette discussion est résolue.

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo