Python之函数
一、函数的调用:
函数这个词存在与众多的编程语言中,总的来说就是处理一件事情的方法的包装。好比一个工厂作为客户你不需要知道产品的原料怎么来的如何运的,你只需要提出你的要求,以及对成品判断是否满意。意味给出条件得出结果不在乎过程。当然如果自己编写方法则需要来编辑整个方法执行的每一步。
例如在前面我们就已经接触了调用函数int().str()等类型转换的函数了。
print(int(12.3))
输出12;类似的还有float(),str(),bool(),例如判断最大值的函数max(),提取绝对值的函数abs():
print(max(1,12.3,3))
print(abs(-12))
输出:12.3和12两个值,一个是选取的最大值,一个是取得绝对值。
另外在Python中如果可以自定义引用的函数名称,例如上面代码可以写成:
a=max
b=abs
print(a(1,12.3,3))
print(b(-12))
输出的结果是一样的。
二、自定义函数:
上面都是调用系统已经封装好的函数,下面我们自己来自定义自己的函数并调用它。
在Python中,定义一个函数要使用def
语句,后面依次写出函数名和括号,括号中的参数和冒号:
,然后,在缩进块中编写函数体,函数的返回值用return
语句返回。例如下面制作一个猜数值的游戏(输入一个起始值,后面有五次的机会猜测这个数值是多少,猜错继续,猜对结束):
def guess(a):
c=0
while c < 5:
b=int(input("请输入一个1-10的整数进行猜测"+"\n"))
if a>b or a<b:
print("猜测错误")
else:
print("猜对啦!,这个数就是:",b)
break
c=c+1
print("不要放弃还有",5-c,"次机会哦!")
d=int(input("请输入一个1-10的整数" + "\n"))
guess(d)
在这里程序执行的时候是先从“d=int(input("请输入一个1-10的整数" + "\n"))”执行的,因为前面是你定义的函数,但是没有调用所以从该句开始执行。执行结果:
请输入一个1-10的整数
10
请输入一个1-10的整数进行猜测
1
猜测错误
不要放弃还有 4 次机会哦!
请输入一个1-10的整数进行猜测
2
猜测错误
不要放弃还有 3 次机会哦!
请输入一个1-10的整数进行猜测
3
猜测错误
不要放弃还有 2 次机会哦!
请输入一个1-10的整数进行猜测
4
猜测错误
不要放弃还有 1 次机会哦!
请输入一个1-10的整数进行猜测
10
猜对啦!,这个数就是: 10
注意:此处的自定义函数少一个return,即返回函数执行的结果值,如下:
def my_test(x):
x=x*x
return x
print(my_test(5))
输出:25。如果没有return语句则会返回None,return None
可以简写为return。
空函数:pass,如下:
def nop():
pass
意味什么都不做,或者是编者暂时不知道写什么函数。则可以用此语句先空着。例如if居于中对于判断后但是暂时不执行什么语句时可以用pass。
注意在传入参数的时候应当注意参数的类型不要弄错,也可以用isinstance()进行处理。
三、函数多个返回值
当定义的函数需要返回多个返回值的时候,则会以元组的形式进行返回,所以说返回的值其实还是一个,但是是以元组的形式进行返还的。
def my_tset(x,y,z):
x+=x
y+=y
z+=z
return x,y,z
a=8
b=9
c=7
print(my_tset(a,b,c))
输出:(16, 18, 14)
大家可以练习输出一元二次方程的两个解
相关练习代码: