一.认识函数
在命令行中查看内置函数的方法:
1.先在命令行里输入python
2.help(函数)
二.函数的定义及运行特点
1.函数基本定义:
def funcname(parameter_list):
pass
(1)参数列表可以没有
(2)函数体里面可以return value
2.举例
(1)实现两个数字的相加的函数/打印输入的参数:
def add (x,y):
result = x + y
return result
def print_code(code):
print(code) #没有return所有最后打印出None
a = add(1,2) #调用函数
b = print_code('python')
print(a,b)
#python
#3 None #因为print函数的内部没有return,所以设置为None
3.题外话
设置系统递归的最大层数
import sys
sys.setrecursionlimit(层数)
4.注意要点
(1)函数中遇到return即终止,后面的语句不会执行
(2)python对返回类型没有要求
三.如何让函数返回多个结果
1.第一种写法(不建议)
#定义函数
def damage(skill1,skill2):
damage1 = skill1 * 3
damage2 = skill2 * 2 + 10
return damage1,damage2
damages = damage(3,6)
print(damages[0],damages[1])
print(type(damages))
运行结果
#9 22
#<class 'tuple'>
2.建议写法
def damage(skill1,skill2):
damage1 = skill1 * 3
damage2 = skill2 * 2 + 10
return damage1,damage2
skill1_damage,skill2_damage = damage(3,6) #这种接受变量的方式称为序列解包
print(skill1_damage,skill2_damage)
四.序列解包
1.序列解包(反向操作便为序列解包)
(1)
d = 1,2,3
print(type(d))
a,b,c = d #解包,个数要相等
(2)注意,解包的时候对应个数要相等
a,b,c=[1,2,3]
五.参数
1.必须参数:在参数列表里面定义的参数必须要传递
2.关键字参数:
def add(x,y)
c = add(y = 3, x = 2) #可以明确指定,没有考虑x,y的顺序
3.默认参数
(1)
(2)
注意:
- 非默认参数不能放在默认参数之后。
- 可以用关键参数标明,与默认参数结合,可以违背形参的顺序。
- 默认值参数和必须参数也不能混合调用