3、API 接口自动化测试详细图文教程学习系列3--相关Python基础知识2

测试学习记录,仅供参考!

Python 基础知识

学习了解 API 接口自动化测试所需要的 python 基础知识点,此处仅简单介绍;

三、数据结构

python里面的数据结构主要有字符串、列表、字典、元组、集合、布尔类型

字符串

字符串的意思就是"一串字符",python 中要求字符串必须使用引号(单引号、双引号、三引号)括起来,需要两边的引号能配对;

复制代码
# 字符串--通过单引号或双引号表示
str_1 = "hello world"
str_2 = 'hello world'

列表

列表 list 是多个元素的集合;可以修改;使用 中括号 []

列表赋值定义

列表变量名称=[ 元素 1,元素 2,元素 3,元素 4,元素 5,......]

多个元素之间使用","逗号隔开;

空列表定义

列表变量名称=[]

列表变量名称=list()

复制代码
# 列表--通过[]表示,里面元素之间用逗号分隔
list_1 = ['boy','girl','matey']
list_2 = [1, 2, 3, 4, 5, 6]
for i in list_2:
    print(i)
# 列表取值,通过索引取值--第一个索引从0开始
print(list_2[2])
# 列表数据转换,把列表的数据转换成字符串
list_str = ','.join(list_1)
print(list_str)
# 强制转换
str_2 = str(list_1)
print(str_2)
print(len(str_2))
print(type(str_2))


输出运行结果
1
2
3
4
5
6
3
boy,girl,matey
['boy', 'girl', 'matey']
24
<class 'str'>

元组

元组是多个元素的集合,但是不能修改;使用 小括号 ()

元组赋值定义

元组变量名称=(元素 1,元素 2,元素 3,元素 4,......)

空元组定义

元组变量名称=()

元组变量名称=tuple()

复制代码
# 元组--通过()表示
tuple_1 = (1, 2, 3)
# 元组取值,也是通过索引取值
print(tuple_1[2])


输出运行结果
3

集合

集合是多个元素的集合,但是不能有重复元素,这是一个特性,区别于 字符串、列表和元组;

集合里面的重复元素是不会打印出来的;;使用 大括号/花括号 {}

集合赋值定义

集合遍历名称={元素 1,元素 2,元素 3,元素 4,......}

空集合定义

空集合要用面向对象的方式

集合变量名称=set()

复制代码
# 元组
tuple_1 = (1, 2, 3)

# 集合--通过{}表示,但是不是键值对的形式
set_1 = {1, 2, 3}
set_2 = set(tuple_1)
print(set_1)
print(set_2)


输出运行结果
{1, 2, 3}
{1, 2, 3}

字典

字典 dict 是 Python 提供的一种常用的数据结构,它用于存放具有映射关系的数据。

Python 提供了字典,字典相当于保存了两组数据,其中一组数据是关键数据,被称为 key 值,另一组数据可通过 key 来访问,被称为 value 值。

字典是另一种可变容器模型,且可存储任意类型对象。

字典的每个键值 key=>value 对用冒号 : 分割,每个对之间用逗号(,)分割,整个字典包括在花括号 {} 中。

字典赋值定义

dict1={key:value,key:value,...,key:value}

空字典定义

使用大括号 {} 创建空字典:

dict2={}

使用内建函数 dict() 创建字典:

dict3=dict()

复制代码
# 字典--通过{'key':'value'}键值对方式表示
dict_1 = {'a': 1, 'b': 2, 'c': 3}
dict_2 = {'name': 'xiaoming', 'age': 18}
print(dict_2)
# 字典取值,通过key值去取--若没有这个key值,则会直接报错
print(dict_1['a'])
# 字典取值,通过get方法获取字典值--若没有这个key值,则返回None异常,不会报错
print(dict_2.get('age'))
# 若没有此key值时,则返回设置的默认值(第一个参数是 key值;第二个参数是 默认值)
print(dict_2.get('b', 'error'))
# for循环迭代key值
for i in dict_2:
    print(i)
# for循环迭代value值--dict_1.Key()、dict_1.values()
for i in dict_1.values():
    print(i)
# 使用items()方法同时迭代 key, value
for key, value in dict_2.items():
    print(key, value)


输出运行结果
{'name': 'xiaoming', 'age': 18}
1
18
error
name
age
1
2
3
name xiaoming
age 18

四、函数

在 Python 中,函数是一组可重复使用的语句块,通过使用关键字 def 定义函数;函数是执行特定任务的一段代码,程序通过将一段代码定义成函数,并为该函数指定一个函数名,即可在需要的时候多次调用这段代码;

自定义函数

函数的定义语法:

def 函数名(形参列表):

函数体(由零条或多条可执行语句组成的函数)

return 返回值

  • 函数名要符合标识符定义,取名的时候要有意义,看名知义;

  • 形参列表是定义该函数可以接受的参数,可以为空,多个参数之间使用逗号隔开,调用函数的地方传入对应的参数值;

  • return 返回值,返回函数的执行结果,若没有返回值可省略;

    自定义函数,在python中,函数是一组可重复使用的语句块,通过使用关键字def定义函数

    def hello():
    # 函数体
    print("Hello World")

    调用函数--函数名()

    hello()

    输出运行结果
    Hello World

带参数的函数

函数形参部分,可以不定义参数,直接空括号即可;若有多个参数,可以使用 "," 逗号隔开;

在调用的时候,传入的就是实际参数,按照形参定义,顺序传入即可;

复制代码
# 带参数的函数,可以接收多个参数,使用逗号分隔,参数也可以有默认值
def add_hello(a, b):
    # 把a+b的结果赋值给新的变量sum
    sum_1 = a + b
    print(sum_1)

# 调用函数--形式参数传值的话是一一对应的,第一个值传给的是参数里面第一个参数,第二个值传给第二个参数
add_hello(10, 20)


输出运行结果
30

接收多个参数,参数也可以有默认值

有默认值时,可以不用传其参值;

没有默认值的参数务必放在有默认值参数的前面;

复制代码
# 接收多个参数
def add_hi(a, b=2):
    sum_2 = a + b
    print(sum_2)

add_hi(10)


输出运行结果
12

当函数出现 return 时,一定是在结尾处;把结果返回出去,这个函数的使命就已经完成了,后面调用时就可以拿到这个返回值;

return一下,为什么返回值?

当返回成功后,其他地方调用此函数时,才可以得到这个返回值--若不返回,则调用时没有值;

复制代码
# 函数值返回,用关键词return
def add_numbers(a, b):
    sum_3 = a + b
    # 函数值返回一定是放在函数体的最下面--返回之后则下面不能再写代码了,会报错
    return sum_3    

print(add_numbers(10, 20))


输出运行结果
30

可变数量的函数

关键字(keyword)参数

上面的实例中是位置参数,在调用的时候,必须严格按照定义函数时指定的顺序来传入参数值;

若根据参数名来传入参数值,则无需蹲守定义形参的顺序,这种方式被称为关键字(keyword)参数;

注意点:

  • 在使用关键字参数的时候,顺序可以随便换;
  • 部分使用关键字参数,部分使用位置参数;
  • 混合使用的时候,关键字参数必须位于位置参数之后,否则会报错;

在某些情况下,程序需要在定义函数时为一个或多个形参指定默认值;这样在调用函数时就可以省略为该形参传入参数值,而是直接使用该形参的默认值;

语法格式:

形参名=默认值

复制代码
# 可变数量的参数,通过 *args 或者 **kwargs 传入不确定数量的参数
def add_all(*args):
    """以一个元组的数据类型存储传递过来的数据"""
    print(args)

# 通过 *args 是形式传参--其返回结果是一个元组
add_all(1, 2, 3, 4, 5, 6)


def add_all_k(**kwargs):
    """以一个字典的数据类型来存储传递过来的数据"""
    print(kwargs)

# 通过 **kwargs 是关键字传参--其返回结果是一个字典
add_all_k(a=1, b=2, c=3)


输出运行结果
(1, 2, 3, 4, 5, 6)
{'a': 1, 'b': 2, 'c': 3}

未完待续。。。

相关推荐
~光~~2 小时前
【嵌入式linux学习】0_3位运算整理
linux·学习
南 阳2 小时前
Python从入门到精通day56
开发语言·python
hssfscv2 小时前
软件设计师下午题二 E-R图
java·笔记·学习
阿kun要赚马内2 小时前
Python中函数的进阶用法
开发语言·python
Spliceㅤ2 小时前
项目:基于qwen的点餐系统
开发语言·人工智能·python·机器学习·自然语言处理
asdzx672 小时前
使用 Python 快速为 PDF 添加背景色或背景图片
python·pdf
badhope2 小时前
Docker入门到实战全攻略
linux·python·docker·github·matplotlib
华研前沿标杆游学2 小时前
2026深圳企业参访-走进深圳华星光电TCL学习智能制造
python
dapeng28702 小时前
Python异步编程入门:Asyncio库的使用
jvm·数据库·python