python基础笔记 04-2021-09-19

定义函数

定义函数相关知识点

  • 如何定义一个函数?
    在这里插入图片描述

  • return之于函数
    函数在执行的时候,碰到return就执行结束,跳出函数,并将结果返回。
    没有返回时,会返回None。

  • 函数的返回值
    函数最后返回的是一个Tuple,可以返回多个函数值、

  • 如何定义一个空函数?
    通过pass语句,用pass作为占位符,函数就不会报错了。

  • 函数报错之参数类型
    自己定义的函数参数类型错误报错和内置函数参数类型错误报错提示时不同的,为了方便纠错,设置参数类型检查的判断——手动设置异常。
    参数类型判断:isinstance(x, (int, float))
    手动设置异常: raise TypeError(‘bad operand type’)

  • 定义函数的导入
    在同一目录下,用from <文件名> import <函数名> 语句进行导入

def my_abs(x) :
	if not isinstance(x,(int,float)) : #类型检查
		raise TypeError('输入数据类型错误!') #手动设置异常
	else :
		if x >= 0 :
			return x
		else :
			return -x

m  = input('请输入一个数字:')
m = float(m)
print(m,'的绝对值是:',my_abs(m))

练习

  • 请定义一个函数quadratic(a, b, c),接收3个参数,返回一元二次方程 ax^2+bx+c=0的两个解。
    a x 2 + b x + c = 0 ax^2 + bx +c =0 ax2+bx+c=0
  • 提示:
    一元二次方程的求根公式为:
    x = − b ± b 2 − 4 a c 2 a x = \frac{-b\pm\sqrt{b^2-4ac}}{2a} x=2ab±b24ac
    计算平方根可以调用math.sqrt()函数:
import math
#定义函数
def quadratic(a,b,c) :
    det = b *b - 4 * a * c
    if (isinstance(a,(int,float)) &isinstance(b,(int,float)) &isinstance(c,(int,float)) & a != 0 ) :
        if det >= 0 :
             x1 = (-b + math.sqrt(det)) / (2 * a)
             x2 = (-b - math.sqrt(det)) / (2 * a)
             return x1, x2
        else :
            return ('方程无解')
    else :
        return ('输入错误')

#传入参数
i = 0
List = list()
while i < 3:
    i = i+1
    number = int(input('请慢慢依次输入abc:'))
    List.append(number)

#调用函数
a = List[0]
b = List[1]
c = List[2]
x = quadratic(a,b,c)
print(x)
请慢慢依次输入abc:1
请慢慢依次输入abc:-2
请慢慢依次输入abc:1
(1.0, 1.0)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值