Python实现3行代码解简单的一元一次方程


Posted in Python onAugust 18, 2014

本文所述实例为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能有所帮助。

Python 相关文章推荐
Python对小数进行除法运算的正确方法示例
Aug 25 Python
Python单元测试框架unittest使用方法讲解
Apr 13 Python
使用Python生成url短链接的方法
May 04 Python
Python探索之ModelForm代码详解
Oct 26 Python
python opencv3实现人脸识别(windows)
May 25 Python
django2+uwsgi+nginx上线部署到服务器Ubuntu16.04
Jun 26 Python
Django管理员账号和密码忘记的完美解决方法
Dec 06 Python
Python设计模式之简单工厂模式实例详解
Jan 22 Python
python中通过selenium简单操作及元素定位知识点总结
Sep 10 Python
python二进制读写及特殊码同步实现详解
Oct 11 Python
Python基于QQ邮箱实现SSL发送
Apr 26 Python
Python爬虫+tkinter界面实现历史天气查询的思路详解
Feb 22 Python
Python统计列表中的重复项出现的次数的方法
Aug 18 #Python
Python中无限元素列表的实现方法
Aug 18 #Python
Python中实现字符串类型与字典类型相互转换的方法
Aug 18 #Python
Python命名空间详解
Aug 18 #Python
Python判断变量是否已经定义的方法
Aug 18 #Python
Python实现全角半角转换的方法
Aug 18 #Python
Python实现冒泡,插入,选择排序简单实例
Aug 18 #Python
You might like
解析如何去掉CodeIgniter URL中的index.php
2013/06/25 PHP
php 三元运算符实例详细介绍
2016/12/15 PHP
Yii2.0多文件上传实例说明
2017/07/24 PHP
php的命名空间与自动加载实现方法
2019/08/25 PHP
用javascript实现的图片马赛克后显示并切换加文字功能
2007/04/21 Javascript
仿微博字符限制效果实现代码
2012/04/20 Javascript
javascript实现文字图片上下滚动的具体实例
2013/06/28 Javascript
JavaScript插件化开发教程 (二)
2015/01/27 Javascript
JavaScript将当前时间转换成UTC标准时间的方法
2015/04/06 Javascript
简介JavaScript中valueOf()方法的使用
2015/06/05 Javascript
jquery实现点击变换导航样式的方法
2015/08/31 Javascript
jQuery实现可展开合拢的手风琴面板菜单
2015/09/15 Javascript
jQuery实现气球弹出框式的侧边导航菜单效果
2015/09/22 Javascript
使用jQuery制作基础的Web图片轮播效果
2016/04/22 Javascript
快速使用Bootstrap搭建传送带
2016/05/06 Javascript
Bootstrap学习笔记之css样式设计(1)
2016/06/07 Javascript
JS添加删除DIV的简单实例
2016/07/08 Javascript
javascript 中设置window.location.href跳转无效问题解决办法
2017/02/09 Javascript
jquery封装插件时匿名函数形参和实参的写法解释
2017/02/14 Javascript
js 动态生成html 触发事件传参字符转义的实例
2017/02/14 Javascript
简单的JS控制button颜色随点击更改的实现方法
2017/04/17 Javascript
微信小程序服务器日期格式化问题
2020/01/07 Javascript
JavaScript DOM常用操作代码汇总
2020/07/03 Javascript
基于JavaScript实现大文件上传后端代码实例
2020/08/18 Javascript
Vue实现点击导航栏当前标签后变色功能
2020/08/19 Javascript
Python实现批量检测HTTP服务的状态
2016/10/27 Python
Python变量访问权限控制详解
2019/06/29 Python
Python如何定义有默认参数的函数
2020/08/10 Python
Origins悦木之源香港官网:雅诗兰黛集团高端植物护肤品牌
2018/03/21 全球购物
应届生求职简历的自我评价怎么写
2013/10/23 职场文书
小学校园广播稿(3篇)
2014/09/19 职场文书
2014年政教处工作总结
2014/12/20 职场文书
花田少年史观后感
2015/06/16 职场文书
2020年个人安全保证书参考模板
2020/01/08 职场文书
Python anaconda安装库命令详解
2021/10/16 Python
python开发制作好看的时钟效果
2022/05/02 Python