时间:2021-05-22
本文所述实例为Python用3行代码实现解一元一次方程,代码简洁高效,具体用法如下:
>>> solve("x - 2*x + 5*x - 46*(235-24) = x + 2")3236.0功能代码如下:
def solve(eq,var='x'): eq1 = eq.replace("=","-(")+")" c = eval(eq1,{var:1j}) return -c.real/c.imag下面就来解读下代码吧。
首先是第一行,它将等式进行了变形,生成了一个结果为0的算式“x - 2*x + 5*x - 46*(235-24) -( x + 2)”。
第二行用eval来执行这个算式,并将x = 1j代入算式,结果是-9708+3j。
注意x = 1j,所以这个方程就化简为“-9708+3x = 0”了,只要将-(-9708) / 3就能得到x了。
而-9708是这个复数的实部,3是这个复数的虚部,于是结果变成了“-c.real/c.imag”。
因此很显然,这个函数是不能解复数方程的。
顺带一提,Python 2.x的/运算会使用整数除法,导致小数部分丢失,所以要获得正确结果就应该使用Python 3.x。
希望本文所述实例对大家学习Python能有所帮助。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例讲述了基于代数方程库Algebra.js解二元一次方程功能。分享给大家供大家参考,具体如下:假设二元一次方程如下:x+y=11x-y=5解方程如下:测试
复制代码代码如下:在线一元二次方程式计算器解二次方程式计算x2+x+=0一元二次方程的解法x1=x2=MadebyCRoot
用户活跃度,是网站运营心中永远的痛。毕竟我们网站数据不是一元一次方程,可以完美直线上升,而是像股票一样起落有伏,在BOSS充满期许而又目光严厉的注视下,简直是运
本文实例讲述了JS求解三元一次方程组值的方法。分享给大家供大家参考,具体如下://求用js码一段代码求三元一次方程组的值!//a1=y*b1+z*c1-d1*x
环境说明:Python3.7.2+JupyterNotebook示例1(求解一元三次方程):importsympyassp#导入sympy包x=sp.Symbo