![](/img/trans.png)
[英]How to convert sympy.core.numbers.Float types to just native python float type, or directly plot them
[英]Sympy not handling float numbers
基本上我寫了這段代碼..
import sympy
number = 5.62527e-11;
f = sympy.Symbol('f');
answer = sympy.solve(Eq(f,number),f);
print(answer);
和預期的答案是“ 5.62527e-11”
但是當我將“ 5.62527e-11”更改為“ 5.62527e-67”並運行相同的代碼時……我得到[0.0]作為輸出,這很尷尬...它適用於“ e-11”但失敗對於“ e-67”,有人可以解釋一下為什么會這樣嗎..有人可以向我展示解決方案嗎...我需要針對此問題的解決方案
注意:上面的代碼只是一部分實際代碼...我必須以相同的方式運行它...所以有人可以幫助我處理該數字嗎?
提前致謝
浮點數的局限性在於它們僅精確到小數點后一位。 我本人對您的問題很好奇,發現https://docs.python.org/3/tutorial/floatingpoint.html
使用符號代替數字(並在必要時在末尾替換符號):
>>> from sympy import *
>>> number = Symbol('5.62527e-11')
>>> f = sympy.Symbol('f');
>>> sympy.solve(Eq(f,number),f)
[5.62527e-11]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.