Lorsque vous calculez le texte suivant 10715086071862673209484250490600018105614048117055336074437503883703510511249361224931983788156958581275946729175531468251871452856923140435984577574698574803934567774824230985421074605062371141877954182153046474983581941267398767559165543946077062914571196477686542167660429831652624386837205668069376 p>
blockQuote>
Mais si vous faites la même chose pour un flotteur I.e 1.5179100891722457E + 79 P>
blockQuote>
Y a-t-il une manière intégrée pour obtenir toute la valeur d'un tel calcul (pas en notation scientifique)? P> 2 ** 1000 code> par exemple, vous obtenez la valeur entière p>
1.2 ** 1000 code> il donne p>
4 Réponses :
Vous devriez pouvoir utiliser donne la sortie format () code>
15179100891722457049849556131606919186730749191867307493867257126004713928916992.000000 P> P>
Essayez de casting sur un entier. Si vous souhaitez obtenir des décimales, vous devez effectuer des travaux supplémentaires en fonction de votre objectif p> p>
La raison du comportement que vous voyez est que la première expression aboutit à un entier puisque ses deux opérandes sont des entiers, tandis que la deuxième expression est un nombre de points flottant, car l'un des opérandes est un flotteur. Pour obtenir le résultat souhaité, vous pouvez lancer le résultat de la deuxième expression à un int:
Vous pouvez l'utiliser pour l'imprimer Ceci sortira: p> Vous pouvez également avoir des valeurs décimales. Il le formatera de la même manière. P> Si vous souhaitez obtenir le numéro complet imprimé, vous pouvez procéder comme suit: P> 1234567890987654400.0