学习教程:廖雪峰-Python教程-函数-函数定义

学习记录:[定义一个函数quadratic(a, b, c),接收3个参数,返回一元二次方程的两个解]

学习心得:

1、对问题进行判断分析后再下手。

一元二次方程需分析根的情况,当△大于零时,有两个根;当△等于零时,有一个根;当△小于零时,无解。

需三种情况进行判断,再进行计算,再打印输出结果。

2、在原题基础之上我增加的问题

①用户输入a,b,c三个值,更加人性化

②对返回的根进行判断,判断根为整数(int)还是浮点数(float)。若为整数则直接返回打印输出,若为浮点数则强制保留2位小数点。

3、额外吸收内容

①bool类型可直接用 int() 强制转换为0和1

 a = 1/3
Tex = int(isinstance(a, float))

以上打印结果为 1。

isinstance() 是Python内置的数据类型检查函数

②round() 函数:返回浮点数x的四舍五入值

a = 1/3
print(round(a, 2))

以上打印结果为 0.33

以下是我的练习代码:

 # 定义一个函数quadratic(a, b, c),接收3个参数
# 返回一元二次方程 ax^2 + bx +c = 0 的两个解
import math # 求根函数
def quadratic(a, b, c):
# 求△
det = b**2-4*a*c
# 判断△ 大于零
if det > 0:
x1 = (-b+math.sqrt(det))/(2*a)
x2 = (-b-math.sqrt(det))/(2*a)
return x1, x2
# 判断△ 等于零 只有一个解
elif det == 0:
x1 = x2 = (-b+math.sqrt(det)) / (2*a)
return x1, x2
# 判断△ 小于零 无解
else:
print('测试失败!') # 判断根的数据类型,为int还是float,若为float则保留2位小数
def q_float(nx):
Tex = int(isinstance(nx, float))
if Tex == 1:
return round(nx, 2)
else:
return int(nx) # 输入abc
a = int(input("请输入第一个数:"))
b = int(input("请输入第二个数:"))
c = int(input("请输入第三个数:")) # 接收根的值
nx1, nx2 = quadratic(a, b, c) # 调用函数,直接打印输出
print("Quadratic(a, b, c)=", q_float(nx1), q_float(nx2))

【Python笔记】2020年7月22日练习=[定义一个函数quadratic(a, b, c),接收3个参数,返回一元二次方程的两个解]的更多相关文章

  1. 【Python实践-1】求一元二次方程的两个解

    知识点: import sys, sys模块包含了与Python解释器和它的环境有关的函数. “sys”是“system”的缩写.sys.exit() 中途退出程序, (注:0是正常退出,其他为不正常 ...

  2. python 练习题:定义一个函数quadratic(a, b, c),接收3个参数,返回一元二次方程ax^2+bx+c=0的两个解

    请定义一个函数quadratic(a, b, c),接收3个参数,返回一元二次方程 ax^2+bx+c=0的两个解. 提示: 一元二次方程的求根公式为: x1 = (-b + math.sqrt((b ...

  3. Python定义一个函数

    Python函数:实现某种功能的代码段 定义一个函数需要遵循的规则: 1.使用 def 关键字 函数名和( ),括号内可以有形参 匿名函数使用 lambda 关键字定义 2.任何传入参数和自变量必须放 ...

  4. 2020年1月31日 安装Python的BeautifulSoap库记录

    C:\Users\ufo>pip install beautifulsoup4 Collecting beautifulsoup4 WARNING: Retrying (Retry(total= ...

  5. 一个由"2020年1月7日 京东出现的重大 Bug 漏洞"引起的思考...

    2020年1月7日,京东由于优惠券设置错误,导致大量产品以0元或者超低价成交,并且发货.网传小家电被薅24万件,损失损失金额高达7000多万.很多网友表示收到货了,在网上晒出到货截图.下面为购买截图: ...

  6. 12月22日《奥威Power-BI财务报表数据填报》腾讯课堂开课啦

    一扇可以通向任何地方的“任意门”,是我们多少人幼时最梦寐以求的道具之一.即使到了现在,工作中的我们还会时不时有“世界那么大,我想去看看”的念头,或者在突然不想工作的时刻,幻想着自己的家门变成了“任意门 ...

  7. Autodesk 最新开发技术研讨会 -8月22日-Autodesk北京办公室

    为了增进与广大中国地区Autodesk产品的二次开发人员的了解与互动,帮助中国地区的Autodesk产品二次开发人员了解Autodesk最新的二次开发技术动向,并获得Autodesk公司专业开发支持顾 ...

  8. 见见面、聊聊天 - 5月22日晚7点Meetup,三里屯绿树旁酒吧,畅谈云技术和应用

    总是邮件.QQ什么的线上聊,让我们见面吧,不怕见光死,呵呵.   我和同事会先抛砖引玉,给大家介绍一下Autodesk几款最新的云技术和解决方案,然后大家就可畅所欲言,自由交流.来自五湖四海的人,为了 ...

  9. 2016年12月22日 星期四 --出埃及记 Exodus 21:17

    2016年12月22日 星期四 --出埃及记 Exodus 21:17 "Anyone who curses his father or mother must be put to deat ...

随机推荐

  1. OpenXml demo

    class OpenXmlDemo { /* * excel 对象结构 * SpreadsheetDocument * >WorkbookPart * >WorksheetPart * & ...

  2. [翻译]ASP.NET Core在 .NET 5 Preview 7的更新

    .NET 5 Preview 7现在可以用了,可以进行评估了.这是此版本中的新增功能: Blazor WebAssembly应用程序现在针对.NET 5 更新了Blazor WebAssembly的调 ...

  3. Jmeter性能测试使用指南

    图床如果失效,可以关注二维码,公众号查阅. JMeter安装 1.下载地址: https://downloads.apache.org//jmeter/binaries/apache-jmeter-5 ...

  4. Zabbix添加监控主机

    一.监控server本机 1.查看主机列表 2.启动server主机的zabbix-agent服务 [root@zabbix ~]# systemctl start zabbix-agent.serv ...

  5. 让内层浮动的Div将外层Div撑开 -----清浮动

    清浮动的好处写多了都能体会到,解决高度塌陷, 一般情况下是要清除浮动的,不然会影响下面标签的排版. <div class="parent" style="width ...

  6. MacOS下smartSVN使用教程

    摘要: 本文介绍smartSVN使用教程,以及如何切换smartSVN的用户账号,如何显示远程服务器内容. 1.下载安装smartSVN 我共享一个我的百度云链接 链接:https://pan.bai ...

  7. python基础day3_str基础函数操作方法及for循环

    字符串操作 s = 'uiehSdc hdsj$jfdks@' s1 = s.capitalize() #仅仅只首字母大写 print(s1) # 结果Uiehsdc s2 = s.upper() # ...

  8. PHP set_exception_handler() 函数

    定义和用法 set_exception_handler() 函数设置用户自定义的异常处理函数. 该函数用于创建运行期间的用户自己的异常处理方法. 该函数返回旧的异常处理程序,如果失败则返回 NULL. ...

  9. PHP tan() 函数

    实例 返回不同数的正切: <?php高佣联盟 www.cgewang.comecho(tan(M_PI_4) . "<br>");echo(tan(0.50) . ...

  10. qemu 如何退出qemu

    如何退出qemu ctrl + a 放开后,再按下x 这里字母是小写!(不要按着大写键)