说到数学题,相信大家都不陌生,从小学到大学都跟数学打交道。 其中初中的方程组,高中的二次曲线,大学的微积分最为头疼, 这个项目 就使用python 来解决方程组问题,微积分问题,矩阵化简。

SymPy库

用Python解决方程组、微积分等问题,主要是用到Python的一个库——SymPy库。可以说这个项目也主要是学习SymPy库的用法。

SymPy是符号数学的Python库。它的目标是成为一个全功能的计算机代数系统,同时保持代码简洁、易于理解和扩展。 SymPy完全是用Python写的,并不需要外部的库。

大家可能还是不太明白,我稍微解释一下,单纯用语言内置的运算与变量解决的是,由值求结果。如:

#仅用于说明,不要直接运行

print x + y

上式中的x与y在这条语句执行前你肯定得赋值的,否则就会出错。

而符号计算不同,你可以在之前将其设为符号。

#仅用于说明,不要直接运行

x = Symbol('x')

y = Symbol('y')

print x + y

上述代码是可以的。因为Sympy库将x与y转换成了符号(概念上)。

这就是SymPy库。

解二元一次方程功能实现

解方程的功能主要是使用Sympy中solve函数实现。

示例题目是:

此处输入图片的描述

符号表示

方程中的符号

from sympy import *

x = Symbol('x')

y = Symbol('y')

或者

from sympy import *

x, y = symbols('x y')

第二个用空格隔开,下面代码中用x,y。括号里面的其实可以随意定义,因为是显示用。 比如:

x = Symbol('x1')

但考虑到易读性还是相同比较好。

方程表示

代码表示与手写还是有区别的,下面列出常用的:

加号 +

减号 -

除号 /

乘号 *

指数 **

对数 log()

e的指数次幂 exp()

对于长的表达式,如果不确定,就加小括号

题目中表达式可表示为:

2 * x - y - 3 = 0

3 * x + y - 7 = 0

由于需要将表达式都转化成右端等于0,这里把常数3和7移到等式左边。

利用solve函数解方程

在解决例子之前,我们先解决一个一元一次的方程。

x * 2 - 4 = 0

虽然很容易口算出来,我们还是要用solve函数

print solve(x * 2 - 4, x)

#result

#[2]

solve:第一个参数为要解的方程,要求右端等于0,第二个参数为要解的未知数。还有一些 其他的参数,想了解的可以去看官方文档。

下面进行例题求解:

solve([2 * x - y - 3, 3 * x + y - 7],[x, y])

完整代码为:

from sympy import *

x = Symbol('x')

y = Symbol('y')

print solve([2 * x - y - 3, 3 * x + y - 7],[x, y])

结果如下:

此处输入图片的描述

用python和sympy库解决方程组问题_使用 Python 解数学方程相关推荐

  1. 用python和sympy库解决方程组问题_使用Python的SymPy库解决数学运算问题的方法

    摘要:在学习与科研中,经常会遇到一些数学运算问题,使用计算机完成运算具有速度快和准确性高的优势.Python的Numpy包具有强大的科学运算功能,且具有其他许多主流科学计算语言不具备的免费.开源.轻量 ...

  2. 用python和sympy库解决方程组问题_Python语言 SymPy库数学方程问题——线性方程组篇...

    本文主要向大家介绍了Python语言 SymPy库数学方程问题--线性方程组篇,通过具体的内容向大家展示,希望对大家学习Python语言有所帮助. 这里我的本机的操作系统是 Ubuntu 14.04  ...

  3. python访问数据库如何解决高并发_使用 Python 和 Oracle 数据库实现高并发性

    随着趋势发展的核心转向更多而不是更快发展,最大限度地提高并发性的重要性日益凸显.并发性使得编程模式发生了新的转变,可以编写异步代码,从而将多个任务分散到一组线程或进程中并行工作.如果您不是编程新手并且 ...

  4. python中texttable库显示实时数据_用Python串口实时显示数据并绘图pyqtgraph

    用Python串口实时显示数据并绘图 使用pyserial进行串口传输 一.安装pyserial以及基本用法 在cmd下输入命令pip install pyserial 注:升级pip后会出现 &qu ...

  5. python用turtle库绘制树图形_使用Python中的Turtle库绘制简单的图形

    Turtle图形库 Turtle库是Python内置的图形化模块,属于标准库之一,位于Python安装目录的lib文件夹下,常用函数有以下几种: 画笔控制函数 penup():抬起画笔: pendow ...

  6. python有哪些库可以读写内存_使用Python学习win32库进行内存读写

    前言: 上一周,在52的精华帖中,看到有位大佬用Python制作了鬼泣5的修改器,看完才知道,原来Python也可以对内存进行操作,出于对技术的好奇,看完以后,决定自己也尝试一下. 要用到的工具: C ...

  7. python建立题库随机抽题_利用python——从题库得到得到随机试卷

    代码思路: 1.读取 txt 文档,文件基本操作 2.遇到了 编码问题 这里用到了Unidode强制编码函数,将其转化为'utf_8_sig'格式,经过实践证明可以. 这里说一下编码问题,Python ...

  8. Python中sympy库的使用方法(详细)

    Python中sympy库的使用方法(详细) python拥有强大的数学计算能力,Matlab确实有很强的计算能力,但是python在这方面更加灵活,运行速度更快,所以python在这方面拥有较大优势 ...

  9. python利用sympy库对某个函数求导,numpy库使用该求导结果计算的程序

    ** python利用sympy库对某个函数求导,numpy库使用该求导结果计算的程序 ** 在python数据处理过程中,我们经常会遇见这样一种情况.需要对一个函数表达式求偏导,并将具体数值代入导数 ...

最新文章

  1. 数组-移除元素(交换移除)
  2. Linux 的性能进行监测
  3. JDK 14的新特性:更加好用的NullPointerExceptions
  4. 3.寄存器(内存访问)
  5. form data和request payload的区别
  6. for循环中的setTimeout()
  7. Python数据处理之导入导出excel数据
  8. SEO自动外链工具推荐:站群推广利器SEO,在线批量发外链让新站快速收录
  9. dell服务器设置bios设置u盘启动不了系统,详解戴尔通过BIOS设置U盘启动的技巧
  10. Unity 3D安装教程
  11. H5页面点击图片自动全屏代码
  12. 应届生求职前端工程师岗位,该如何准备?
  13. 如何配置 Cilium 和 BGP 协同工作?
  14. day19 javamail
  15. 习题5-7 使用函数求余弦函数的近似值(15 分)
  16. 应聘计算机简历中的爱好怎么写,关于求职个人简历中的爱好特长应该怎么写
  17. 怎样理解心藏神,肝藏魂,脾藏意,肺藏魄,肾藏精志?
  18. css实现图片自动渐变切换、element-plus 的修改el-table的(边框线为虚线、表头样式)
  19. 用Python自动计算Excel排班表的工时
  20. 【腾讯TMQ】基于模型的自动化测试工具——GraphWalker

热门文章

  1. 2019年9月19日好货十元内精选包邮
  2. 项目需求|眼镜试戴app(ios)
  3. 一文详解大小功率MOS管,你不知道的都在这里
  4. 折腾黑群晖之域名直接访问群晖
  5. 2021-09-20
  6. 如何帮助公司设计一个优秀的品牌标志?
  7. Js 日期字符串分别截取 年 月 日 时 分 秒
  8. 使用pyhton+adb实现自动公主连结闯关
  9. html给div加圆角边框,border-radius是向元素添加圆角边框的方法
  10. 手把手教你ARC——iOS/Mac开发ARC入…