Python 函数介绍

时间:2023-03-09 07:47:43
Python 函数介绍

函数的作用

1.减少重复代码

2.方便修改,更易扩展

3.保持代码一致性

函数的命名规则:

1.函数名必须以下划线或字母开头,可以包含任意字母,数字或下划线的组合,不能使用任何的标点符号。

2.函数名区分大小写。

3.函数名不能是保留字。

形参和实参

形参: 形式参数,不是实际存在的,是虚拟变量。

实参: 实际参数,调用函数时传给函数的参数,可以是常量,变量,表达式,函数,传给形参。

举个例子:

def add(x, y):             # 这里 add(x, y) 里面中的 x, y 就是形参
print(x + y) add(1, 2) # 调用 add(1, 2) 函数里面的 1, 2 就是实参 运行结果:
3

函数参数分类

1.必备参数:

必备参数必须按正确的顺序传入,数量与申明时一致。

def person(name, age):
print('My name is %s, age %d' %(name, age)) person('klvchen', 28) 运行结果:
My name is klvchen, age 28

2.关键字参数

函数使用关键字参数进行调用时,允许参数的顺序与声明时不一致。

def person(name, age):
print('My name is %s, age %d' %(name, age)) person(age = 28, name = 'klvchen') 运行结果:
My name is klvchen, age 28

3.默认参数

调用函数时,用户如果没有传入缺省的值,则被认为是默认值。默认参数只能放在最后。

def person(name, age, sex = 'male'):
print('My name is %s, age %d sex is %s' %(name, age, sex)) person(age = 28, name = 'klvchen') 运行结果:
My name is klvchen, age 28 sex is male

当用户需要传入非默认参数时:


def person(name, age, sex = 'male'):
print('My name is %s, age %d sex is %s' %(name, age, sex)) person('lily', 18, 'female') 运行结果:
My name is lily, age 18 sex is female

4.不定长参数

事先没有规定用户输入的参数数量。

(*args)只存放未命名的变量参数,用户输入的参数会组成元组方式传入。

def add(*args):
print(args)
total = 0
for i in args:
total += i
print(total) add(1, 2, 3) 运行结果:
(1, 2, 3)
6

(**kwargs)只存放命名的变量参数,用户输入的参数会组成字典方式传入。

def person(**kwargs):
print(kwargs)
for i in kwargs:
print("%s : %s" %(i, kwargs[i])) person(name='klvchen', job='IT') 运行结果:
{'name': 'klvchen', 'job': 'IT'}
name : klvchen
job : IT

(*args)和(**kwargs)配合一起使用即可以接受用户输入的全部参数:

def person( *args, **kwargs):
print(args)
print(kwargs)
print()
for l in args:
print(l)
for i in kwargs:
print("%s : %s" %(i, kwargs[i])) person(1, 2, 3, 4, name='klvchen', job='IT') 运行结果:
(1, 2, 3, 4)
{'name': 'klvchen', 'job': 'IT'} 1
2
3
4
name : klvchen
job : IT

函数的返回值

函数返回单个值

def test():
return 'hello world' result = test()
print(result) 运行结果:
hello world

函数返回多个值

def test():
return 1, [2, 3] result = test()
print(result)
运行结果:
(1, [2, 3])

注意:

1.如果函数没有 return 关键字,默认会返回 None

2.如果函数 return 多个值,Python 会把多个值组成一个元组返回

3.函数在执行过程中如果遇到 return 关键字就会停止执行并返回结果,return 代表着函数的结束