From 93b74c642f3975ddf313b6f702b5a4f9782c9bc2 Mon Sep 17 00:00:00 2001 From: guanjihuan <34735497+guanjihuan@users.noreply.github.com> Date: Fri, 25 Jun 2021 11:35:19 +0800 Subject: [PATCH] Update sympy_example.py --- .../2021.06.24_sympy_example/sympy_example.py | 35 ++++++++++--------- 1 file changed, 19 insertions(+), 16 deletions(-) diff --git a/language_learning/2021.06.24_sympy_example/sympy_example.py b/language_learning/2021.06.24_sympy_example/sympy_example.py index e6c0e1a..988f45e 100644 --- a/language_learning/2021.06.24_sympy_example/sympy_example.py +++ b/language_learning/2021.06.24_sympy_example/sympy_example.py @@ -16,8 +16,6 @@ print(z**2) print() - - # 替换(Substitution) print('变量替换:') expression_1 = x**2+1 @@ -26,8 +24,6 @@ print(value_1) print() - - # 字符串转成符号表达式 print('字符串转成符号表达式:') expression_string = 'x**3+1' @@ -39,8 +35,6 @@ print(value_2) print() - - # 简化表达式 print('简化表达式:') expression_3 = sympy.simplify(sympy.sin(x)**2 + sympy.cos(x)**2) # 使用sympy.simplify() @@ -48,8 +42,6 @@ print(expression_3) print() - - # 符号矩阵 print('符号矩阵:') a, b = sympy.symbols('a b') @@ -58,21 +50,32 @@ print(matrix) print() - - +sympy.init_printing(use_unicode=True) # 符号矩阵的特征值和特征向量 print('符号矩阵的特征值和特征向量:') eigenvalue = matrix.eigenvals() # 使用.eigenvals()方法 +print('特征值\n', eigenvalue, '\n') +sympy.pprint(eigenvalue) +print('\n', sympy.pretty(eigenvalue)) +print() + eigenvector = matrix.eigenvects() # 使用.eigenvects()方法 -print('特征值\n', eigenvalue) -print('特征向量\n', eigenvector) +print('特征向量\n', eigenvector, '\n') +sympy.pprint(eigenvector) +print('\n', sympy.pretty(eigenvector)) print() P, D = matrix.diagonalize() # 使用.diagonalize()方法 -print('特征值\n', D) -print('特征向量\n', P) -print('特征值\n', D.subs(a, -4).subs(b, 2)) -print('特征向量\n', P.subs(a, -4).subs(b, 2)) +print('特征值\n', D, '\n') +print(sympy.pretty(D), '\n') +print('特征向量\n', P, '\n') +print(sympy.pretty(P), '\n') +print() + +print('特征值\n', D.subs(a, -4).subs(b, 2), '\n') +print(sympy.pretty(D.subs(a, -4).subs(b, 2)), '\n') +print('特征向量\n', P.subs(a, -4).subs(b, 2), '\n') +print(sympy.pretty(P.subs(a, -4).subs(b, 2)), '\n') print() # 和numpy对比