Numéro d'impression dans l'ingénierie format

Je suis en train d'imprimer un numéro de téléphone dans l'ingénierie format avec python, mais je n'arrive pas à le faire fonctionner. La syntaxe SEMBLE assez simple, mais il ne fonctionne tout simplement pas.

>>> import decimal 
>>> x = decimal.Decimal(1000000)
>>> print x
1000000
>>>> print x.to_eng_string() 
1000000

Je ne peux pas comprendre pourquoi cela est. Les deux valeurs ne sont pas identiques (l'une est une chaîne, l'autre est un int). Réglage des différents contextes dans decimal ne semble pas aider non plus. Des indices ou des idées?

J'ai trouvé la solution ici "%.4g" % x

OriginalL'auteur jmurrayufo | 2012-09-07