python对函数值求导和求值

from sympy import *


x, y = symbols('x, y')

z = x ** 3 + y ** 3 + x * y + 3
print(z)
result = z.subs({x: 2, y: 2})  # 用数值分别对x、y进行替换
print(result)

dx = diff(z, x)  # 对x求偏导
print(dx)
result = dx.subs({x: 2, y: 2})
print(result)

dy = diff(z, y)  # 对y求偏导
print(dy)
result = dy.subs({x: 2, y: 2})
print(result)

输出

x**3 + x*y + y**3 + 3
23
3*x**2 + y
14
x + 3*y**2
14

subs函数可以将算式中的符号进行替换,它有3种调用方式:

  • expression.subs(x, y) : 将算式中的x替换成y
  • expression.subs({x:y,u:v}) : 使用字典进行多次替换
  • expression.subs([(x,y),(u,v)]) : 使用列表进行多次替换
posted @ 2020-12-24 09:19  小Aer  阅读(1657)  评论(0编辑  收藏  举报