显示() 函数python
Display() funktion python
我正在 PyCharm:
import sympy as sp
from IPython.display import display, Math
h,r,T = sp.symbols('h r T') #hier Eure Variablennamen einsetzen
variablen = [h,r,T] #hier Eure Variablennamen einsetzen
variablen_werte = [2.8,4.2,2.4]
fehler_werte = [0.3,0.2,0.1]
funktion = (h*r**2*sp.sqrt(T))
fehler = 0
fehlersymbole=[]
ableitungen_quadr = []
for var in variablen:
d = sp.symbols('d' + var.name)
fehlersymbole.append(d)
partial = sp.diff(funktion, var) * d
ableitungen_quadr.append(partial**2)
fehler = fehler + partial**2
fehler_abs=sp.simplify(sp.sqrt(fehler))
fehler_rel=sp.simplify(sp.sqrt(fehler/funktion**2))
funktions_wert=sp.Subs(funktion,variablen,variablen_werte).doit()
err1=sp.Subs(fehler,variablen,variablen_werte).doit()
err2=sp.Subs(err1,fehlersymbole,fehler_werte).doit()
print('Funktion:')
display(Math("f="+sp.latex(funktion)))
print('Messwerte:')
for i in range(len(variablen)):
display(Math(str(variablen[i])+'='+ str(variablen_werte[i])+'\pm '+ str(fehler_werte[i])))
print('Absoluter Fehler:')
display(Math(r'\Delta f='+sp.latex(fehler_abs).replace('d',r'\Delta ')))
print('Relativer Fehler:')
display(Math(r"\Delta f/f="+sp.latex(fehler_rel).replace('d',r'\Delta ')))
display(Math("f= %6.2f \pm %6.2f" %(funktions_wert,sp.sqrt(err2))))
display(Math("f= %6.2f \pm %6.1f %s" %(funktions_wert,sp.sqrt(err2)/funktions_wert*100," \%")))
我还有很多其他的 display() 函数要展示,但不能。
但是现在我的输出有问题。对于每个 display() 输出是:
<IPython.core.display.Math object>
但应该是:
我做错了什么?我应该更改 PyCharm 配置吗?以及如何?
PyCharm 仅支持命令行(纯文本)input/output。您期望的结果是使用 IPython/Jupyter 笔记本生成的公式图像。因此,尝试打开笔记本程序(如果已安装)并将代码粘贴到其中。示例:
我正在 PyCharm:
import sympy as sp
from IPython.display import display, Math
h,r,T = sp.symbols('h r T') #hier Eure Variablennamen einsetzen
variablen = [h,r,T] #hier Eure Variablennamen einsetzen
variablen_werte = [2.8,4.2,2.4]
fehler_werte = [0.3,0.2,0.1]
funktion = (h*r**2*sp.sqrt(T))
fehler = 0
fehlersymbole=[]
ableitungen_quadr = []
for var in variablen:
d = sp.symbols('d' + var.name)
fehlersymbole.append(d)
partial = sp.diff(funktion, var) * d
ableitungen_quadr.append(partial**2)
fehler = fehler + partial**2
fehler_abs=sp.simplify(sp.sqrt(fehler))
fehler_rel=sp.simplify(sp.sqrt(fehler/funktion**2))
funktions_wert=sp.Subs(funktion,variablen,variablen_werte).doit()
err1=sp.Subs(fehler,variablen,variablen_werte).doit()
err2=sp.Subs(err1,fehlersymbole,fehler_werte).doit()
print('Funktion:')
display(Math("f="+sp.latex(funktion)))
print('Messwerte:')
for i in range(len(variablen)):
display(Math(str(variablen[i])+'='+ str(variablen_werte[i])+'\pm '+ str(fehler_werte[i])))
print('Absoluter Fehler:')
display(Math(r'\Delta f='+sp.latex(fehler_abs).replace('d',r'\Delta ')))
print('Relativer Fehler:')
display(Math(r"\Delta f/f="+sp.latex(fehler_rel).replace('d',r'\Delta ')))
display(Math("f= %6.2f \pm %6.2f" %(funktions_wert,sp.sqrt(err2))))
display(Math("f= %6.2f \pm %6.1f %s" %(funktions_wert,sp.sqrt(err2)/funktions_wert*100," \%")))
我还有很多其他的 display() 函数要展示,但不能。
但是现在我的输出有问题。对于每个 display() 输出是:
<IPython.core.display.Math object>
但应该是:
我做错了什么?我应该更改 PyCharm 配置吗?以及如何?
PyCharm 仅支持命令行(纯文本)input/output。您期望的结果是使用 IPython/Jupyter 笔记本生成的公式图像。因此,尝试打开笔记本程序(如果已安装)并将代码粘贴到其中。示例: