使用python assert断言来写一个三角形形状的判断

作为一个咸鱼测试,我是对学习真心没啥兴趣的,前段时间看到一个校友(同一培训班)的求助,如何用py写一个三角形判断,作为一个只会py基础,学完基础就丢掉半年的渣渣,下意识的关掉,打开lol压压惊。好吧就当我打游戏打出来的灵感吧。闲话少说,下面来看我怎么实现的吧。
1.首先是输入三条边,这个简单input赋值就好了
a=float(input(“xxxxxx”))
b=float(input(“xxxxxx”))
c=float(input(“xxxxxx”))
2.然后是是判断逻辑
a.是否形成三角形,复习下小学知识:
组成三角形的三条边a,b,c需满足条件:a+b>c;a+c>b;b+c>a
这里本来打算用if else来实现的,然后大哥告诉我限制输入范围,臣妾做不到啊,ok开始百度,中间省略n次失败尝试,使用assert,通过判断输入值是否正确限定是否进入下一步
如果有更好的方式请在下方留言
首先调用sys模块:
import sys
上面代码抄下来
a=float(input(“xxxxxx”))#给a赋值浮点数
b=float(input(“xxxxxx”))
c=float(input(“xxxxxx”))
然后用assert来限制输入,首先float已经限制了输入只能是浮点数,不需要控制字符类型只要写范围就可以了
校友说的是1–9999,那么我们用assert来限制
assert a>0 and a<10000,“请输入0-9999的数字”#检验输入数字是否在范围内,如果正确继续执行,如果不是报错引号部分文字
关键难点 assert的用法
assert 条件 ,“提示内容”
完善代码:
#coding=utf-8
import sys
a=float(input(“xxxxxx”))#给a赋值浮点数
assert a>0 and a<10000,“请输入0-9999的数字” #给范围
b=float(input(“xxxxxx”))
assert b>0 and b<10000,“请输入0-9999的数字”
c=float(input(“xxxxxx”))
assert c>0 and c<10000,“请输入0-9999的数字”
assert a+b>c and a+c>b and b+c>a,“无法构成三角形”#小学知识复习
3.好了现在基本可以保证我们输入的数字可以构成三角形了,那么接下来加上三角形判断,这段小代码就算完成了
三角形的形状有哪些:
1这个三角形
2.那个三角形
(回去复习三角形吧。。。。)
这个简单的 if eles 语句就可以实现
#coding=utf-8
import sys
a=float(input(“xxxxxx”))#给a赋值浮点数
assert a>0 and a<10000,“请输入0-9999的数字” #给范围
b=float(input(“xxxxxx”))
assert b>0 and b<10000,“请输入0-9999的数字”
c=float(input(“xxxxxx”))
assert c>0 and c<10000,“请输入0-9999的数字”
assert a+b>c and a+c>b and b+c>a,“无法构成三角形”#小学知识复习
if a == b== c:
print(“等边三角形”)
后边就不再一一列举了,这段代码也算完成了,大家可以继续完善,提示一下代码纯手打,现在没有编译器调试,就不贴了,逻辑不是很难大家手敲吧,主要是学会assert的用法
因为没有实战的项目py学起来比较枯燥,大家有什么简单小项目,可以留言大家一起实现