Python3函数:
(一):怎么写和怎么调用函数
函数:
当一段代码需要不定期重复使用时,将一段代码封装,打包到一个容器中,函数中存储的是逻辑代码
如何写函数:
def+函数名+() 定义函数
如何调用函数:
函数名+() 函数不调用不会执行
函数的好处:
减少代码量,同样的代码功能可以多次使用
函数的参数和返回值:
def+函数名(),小括号内没变量就是无参,有就是有参, 为定义函数的形参,参数与参数之间用逗号隔开
函数名+(),函数调用时,括号内的为实参,实参会传递给定义函数时的形参,也就是实参给形参赋值,形参和实参的 个数必须保持一致
如果函数没有返回值,那么默认函数最终的值为None(空值),如果你想要让函数的最终值是你想要的结果,就必须 加返回值,返回值的关键字为return 你想要的结果,相当于循环里边break的作用,用来结束函数的。
什么时候函数加参,加返回值?
当函数内部需要调用者写值的时候,当调用者需要函数内部值的时候。
实例:
1.任意输入一个数,打印该数和1-9相乘的结果。(一个参数)
a = int(input('请输入你想打印的数字:'))
def dayin(a): #定义函数 下边是逻辑代码
for j in range(1, 10):
print('%d*%d=%d' % (a, j, a * j))
dayin(a) #调用函数
2.求任意两数之和 和这两数之积 谁大。(两个参数)
def mySum(a,b):
return a+b
def myPro(a,b):
return a*b
print(max(mySum(100,100),myPro(100,100)))
(二):函数的参数
关键字参数:
关键字的参数就是在定义函数是将参数明确写出,这样在下边调用写实参时,就可以不按形参的顺序写,但是必须明确实参所对 应的是哪个形参,比如下面这样:
def fun(name,age):
print("姓名%s,年龄%d"%(name,age)) #注意参数类型
#fun(age=10,name="张三") 这样就可以不用看形参顺序了。
#fun('张三',10) 若是不写参数名 就必须按照形参顺序进行赋值
默认参数:
默认参数就是在定义函数的时候就给形参赋值,多用在有个一个固定参数的情况下,比如你需要多次拿一个变化的数和一个固定 的数相乘,如下:
def fun(a,b=6): # a为可变化的形参,b就是固定的数值了
print(a+b)
fun(3) #写实参时也只用写一个
不定长参数:
格式:def 函数名(*args,**kwargs) *+形参 输出的是元组 *+形参 输出的是字典
def f(*args,**kwargs):
print(args)
print(kwargs)
f(1,2,3,4,5,6,x=1,y=2)
运行结果:(1, 2, 3, 4, 5, 6)
{'x': 1, 'y': 2}