Python 函数的定义
函数是代码封装的一种伎俩,函数中蕴含一段能够反复执行的代码,在须要用到这些代码时,只须要调用函数,就会运行函数中的代码。
python 函数这么定义:
def 函数名称 (参数 1, 参数 2):函数体(要运行的代码)
比方一个很简略的函数定义:
def add(a, b):
return a + b
当初咱们举个例子阐明函数的作用。
print('关上高级车门')
print('开发动机')
print('安全带')
print('踩油门')
print('把握方向')
如果要开很屡次车,那么每次都须要敲雷同的 5 行代码,这样会造成几个问题:
- 很容易编写不同的代码,或者代码呈现谬误
- 代码冗余,可读性不强
- 不容易保护,当须要批改某个步骤时,要批改多处。
Python 函数的调用
当初咱们能够把上述代码封装在函数中,当须要运行这些代码时,调用函数就能够了,这样缩小了很多复制粘贴或者手工编写多行代码的步骤,函数的名称也表明了代码的作用,当须要批改局部逻辑,只须要批改函数体就能够了。
def run_car():
print('关上高级车门')
print('动员发动机')
print('系上安全带')
print('踩油门')
print('把握方向')
run_car()
# 其余代码
run_car()
Python 函数的返回值
return 示意当函数执行完之后,想让函数里面的程序失去函数执行的后果,return 的值能够任意的数据类型。
def add(a, b):
return a + b
result = add(3,4)
print(result)
- 函数体当中的代码,遇到 return 会终止运行。
- 函数的返回后果能够是任意类型,包含 None
- 当函数体当中没有 return,默认返回 None
Python 函数能够返回多个值,只须要在多个值之间加上逗号,失去的是元组类型。
def add(a, b):
return a, b
参数的四种类型
return 示意函数返回给内部的值,而参数示意函数从内部接管的值。在函数定义时候的参数叫做形式参数,它其实就是一个变量名称,在函数调用时候的参数叫做理论参数,相当于给变量赋值。
def get_coffee(suger):
if suger > 100:
return '甜咖啡'
elif suger < 1:
return '美式'
else:
return '莫名其妙的咖啡'
result = get_coffee(100)
print(result)
留神,形式参数的个数和理论参数的个数要一样,而且程序要统一,这种形式叫做地位参数。(和领导吃饭做地位)如果形式参数和理论参数的个数不统一,会导致程序无奈别离赋值:
def add(a, b):
c = a + b - 1
return c
add(5, 7, 8) # NO
关键字参数:在调用函数的时候,做一个关键字标记,以防传参谬误,造成损失。次要是当参数很多的状况,你记不清程序,关键字去标识数据的意思。
默认参数:在函数定义的时候,给某个变量间接赋值,成为默认值。就是应用默认值间接赋值,在调用函数的时候,能够少传参数。关键字参数,默认参数也好,都必须放到地位参数的前面。
def add(a, b=0):
c = a + b - 1
return c
add(a=4, b=6)
add(3)
自动化测试场景:增加多个数据,运行多个用例
def write_case(number):
for _ in range(number):
username = input("请输出用户名:")
passwd = input("请输出明码:")
age = input("请输出年龄:")
user = dict()
user.update(username=username,
passwd=passwd,
age=age)
yield user
def run(case):
print(f"运行用例 - 用户名 {case['username']}")
cases = write_case(2)
for case in cases:
run(case)