GBase8a自动化回归测试编程语言PYTHON知识点
目前GBase8a数据库在自动化回归测试框架中使用了python语言的拆包封包的功能,方便实用,下面详细介绍一下具体内容。
- 拆包和封包的概念
拆包:顾名思义就是拆开包裹,取出里面的物品。在python中就是拆开容器,取出里面的元素,可以一个个取,也可以将多个打包在一起取。
封包:就是把一个一个的元素封装在一起,组合一个集合。
- 拆包
- 使用“*”进行拆包:
拆包:将列表、元组、字典三种类型的元素,全部提炼出来的过程,或是使用变量去接收函数返回值的过程。
例如:
# 列表拆包
list = [1, 2, 3]
print(*list)
1 2 3
# 元组拆包
tuple = (1, 2, 3)
print(*tuple)
1 2 3
# 字典拆包
dict = {“a”:”1”, “b”:”2”, “c”:”3”}
print(*dict)
a b c
注意:字典拆包后,仅会将key拆出来,不会将value拆出。
- 使用*args, **kwargs调用函数时进行拆包:
例如:
def chaibao1(a, b, c):
print(a+b+c)
kwargs = {“a”:”1”, “b”:”2”, “c”:”3”}
chaibao1(**kwargs)
def chaibao2():
Return 1, 2, 3
# 使用变量分别接收函数的返回值,从而实现拆包
a, b, c = chaibao2()
print(a, b, c)
注意:接收返回值的变量个数一定要与函数返回值数量相同!
- 封包
常见的封包方式:
- 将多个值分别赋予同一个变量
例如:
# 封包成一个元组
a = 1, 2, 3
def test():
return 1, 2, 3
# 使用一个变量接收函数返回的多个值
c = test()
- 使用*args, **kwargs定义函数进行封包
例如:
def test1(*args)
# 封包成一个元组
test1(1, 2, 3)
def test2(**kwargs)
# 封包成一个字典
test2(a=1, b=2, c=3)