前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >盘点一道Python基础实现代数运算的基础题目

盘点一道Python基础实现代数运算的基础题目

作者头像
Python进阶者
发布2022-03-10 15:57:13
发布2022-03-10 15:57:13
50000
代码可运行
举报
运行总次数:0
代码可运行

大家好,我是Python进阶者。

一、前言

前几天在Python星耀交流群有个叫【BuLLBuL】的粉丝问了一个关于Python实现代数函数的问题,这里拿出来给大家分享下,一起学习。

题目看上去倒也不太难的样子,但是对初学者来说,还是有点压力的。

二、解决过程

这里给出【魏哥】和【🌑(这是月亮的背面)】大佬的解答,一共两个方法,一起来看看吧!

【魏哥】解答

其实这个题目的逻辑和思路也相对简单,下面是拆解。

Python中的幂运算格式是:x ** 2,其中x代表的是变量,2代表的是幂,有了这个,就可以正常写代码,定义变量和函数了。下面是【魏哥】给的代码,如下所示:

代码语言:javascript
代码运行次数:0
复制
def calc(x, y):
    fenzi1 = x ** 2 + y ** 2
    fenmu1 = x ** 2 - y ** 2
    fenzi2 = x ** 3 - y ** 3
    fenmu2 = x ** 3 + y ** 3
    result = fenzi1 / fenmu1 + fenzi2 / fenmu2
    return result


if __name__ == '__main__':
    print(calc(7, 12))

输出结果是-2.700338000965717。这个方法还是蛮好理解的,完全是教科书级别的,比较好理解。

【月神】解答

这里运用了第三方库sympy,代码如下:

代码语言:javascript
代码运行次数:0
复制
from sympy import symbols

x, y = symbols('x,y')  # 定义x, y变量
# 定义代数式
f = ((x ** 2 + y ** 2) / (x ** 2 - y ** 2)) + ((x ** 3 - y ** 3) / (x ** 3 + y ** 3))
# 将x与y替换成对应实数,计算代数式
f.subs({x: 7, y: 12})

写出来也十分的好看,如下图所示:

而且代数式都清晰可见,很形象:

其中f.subs()这个有点难理解,不过不慌,有解析:

关于参数,字典和元组都支持的。

三、总结

大家好,我是Python进阶者。这篇文章基于粉丝提问,针对Python实现代数函数的问题,给出了具体说明和演示,顺利地帮助粉丝解决了问题。

总的来说,群里给出了两个方法,一个传统方法,一个结合第三方库实现,各有千秋。我相信肯定还有其他方法的,如果你还有其他方法,欢迎私信交流。

最后感谢粉丝【BuLLBuL】提问,感谢【月神】和【魏哥】大佬给出的示例和代码支持,感谢粉丝【黑脸怪】、【dcpeng】、【东哥】、【艾希·觉罗】、【冫马讠成】等人参与学习交流。

小伙伴们,快快用实践一下吧!

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-03-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Python爬虫与数据挖掘 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、前言
  • 二、解决过程
    • 【魏哥】解答
    • 【月神】解答
  • 三、总结
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档