温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

python3类应用于数学的示例

发布时间:2020-11-17 09:47:44 来源:亿速云 阅读:140 作者:小新 栏目:编程语言

小编给大家分享一下python3类应用于数学的示例,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨吧!

举个大家在中学都接触过的例子:解三角形。

我需要做一个模块,实现以下功能:输入三角形的三条边长a,b,c,然后计算并返回该三角形三个角的角度,以及该三角形的面积、周长。

 

python3类应用于数学的示例

你会说,这很简单啊,我们一般就这么做就行了,假如输入三角形的边长为678

def ...:    # 参照公式把五个函数定义出来,就不详细写了
    ...
def ...:
    ...
 
# 然后调用定义好的函数,传入边长数据
angleA(6,7,8)  # 计算角A
->0.8127555613686607  # 注意返回值为弧度
 
angleB(6,7,8)  # 计算角B
->1.0107210205683146
 
angleC(6,7,8)  # 计算角C
->1.318116071652818
 
square(6,7,8)  # 计算面积
->20.33316256758894
 
circle(6,7,7)  # 计算周长,额,好像有个数字写错了
->20  # 计算结果当然也就错了

这不就搞定了嘛,把计算需要用到的五个函数依次定义出来,然后调就好了。但大家仔细观察一下,这样写有什么不太好的地方?相信大家都发现了,这是同一个三角形,每次计算角度、面积、周长的时候,都要把三条边的长度传进去,一方面这很麻烦,另一方面,万一有一个不小心写错了,那么那条结果当然也就错了啊。

我们根据三角形全等的条件可以知道,三角形的三条边确定了,那么它的三个角、面积、周长,也就都确定了。所以对于同一个三角形,最好只需要传一次数据就可以了。

这不也简单嘛,把它们都写在一个函数里不就得了:

def calculate(a,b,c):
    angleA = ...
    angleB = ...
    angleC = ...
    square = ...
    circle = ...
    return {'角A':angleA, '角B':angleB, '角C':angleC, '面积':square, '周长':circle}
 
result=calculate(6,7,8)
 
result['角A']
->0.8127555613686607
 
result['面积']
->20.33316256758894

看完了这篇文章,相信你对python3类应用于数学的示例有了一定的了解,想了解更多相关知识,欢迎关注亿速云行业资讯频道,感谢各位的阅读!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI