测试基础笔记第十四天

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录


一、字符串

1.字符串

  • 定义:使用引号(单引号,双引号,三引号)引起来的内容就是字符串。

  • 引用:通过索引(下标)获取字符串数据。

  • 索引(下标) :是数据在容器中的位置编号。对于字符串来说,就是字符在整个字符串中的位置。

  • 说明:

    1、一般情况下,使用的都是正数索引(从左到右), 从 0 开始的。

    2、Python 中支持负数索引(从右到左),-1 表示容器中最后一个数据。

    3、使用索引(下标) 可以获取容器中指定位置的数据,如:字符串[索引]。

    4、获取字符串长度:len(字符串)

2.字符串切片

  • 语法:字符串[开始位置下标:结束位置下标:步长]
  • 说明:1、通过切片操作,可以获取字符串中指定部分的字符。
    2、结束下标位置对应的字符不会被截取到
    3、步长用于设置截取间隔,默认步长为1

3.查找find()

  • 语法:字符串.find(被查找字符)
  • 说明:被查找字符是否存在于当前字符串中, 如果存在则返加开始下标, 不存在则返回 -1

email = input("请输入你的邮箱:")

if email.find("@") != -1:

print(email.find("@"))

else:

print("邮箱格式错误")

4.去除两端空白字符 strip

  • 语法:字符串.strip()
  • 说明:将字符串两端的空白字符(空格、换行\n、制表符\t)去除,返回一个新的字符串

username = ' 15000000000 '

username = username.strip()

print(username)

5.字符串转换大小写 lower、upper

  • 语法:字符串.lower()
    字符串.upper()
  • 说明:将字符串转换为大写或者小写, 返回新的字符串

5.拆分 split()

  • 语法:字符串.split(分割符)
  • 说明:按照指定字符来分割字符串
  • 注意:
  1. 方法执行完成后返回的数据类型为列表(list)
  2. 不传入分割符时,默认以空白字符进行拆分

6.字符串的其他常见方法

1.替换

  • 语法:字符串.replace(原字符串, 新子字符串)
  • 说明: 使用新的子字符串, 按规则替换旧的字符串内容

2.连接

  • 语法:字符串.join(一般为列表)
  • 说明 :一般用于将列表按指定子字符合并为字符串

3.判断是否为纯数字

  • 语法:字符串.isdigit()
  • 说明:返回值为 True 和 False

二、列表

1.列表的定义

  • 说明:列表(list)是 Python 中使用最频繁的数据类型, 在其他语言中通常叫做数组, 专门用来存储一组数据

2.列表增加方法:append()

  • 语法:列表.append(新增数据)
  • 说明:在列表的末尾添加数据

val_list = ["Web自动化", "UI自动化", "接口自动化"]

val_list.append("APP自动化")

print(val_list) # ['Web自动化', 'UI自动化', '接口自动化', 'APP自动化']

3.列表删除方法:pop()

  • 语法:del_data = 列表.pop(索引)
  • 说明:删除指定索引对应的数据
  • 注意:使用方法时如果不传入索引值, 默认删除列表中最后一个数据

val_list = ["Web自动化", "UI自动化", "接口自动化"]

val = val_list.pop(0)

print(val, val_list) # web自动化,['UI自动化', '接口自动化']

4.列表修改方法:索引

  • 语法:列表[索引]=新数据
  • 说明:通过指定索引修改对应数据
  • 注意:使用不存在的索引, 代码执行会报错!

val_list = ["Web自动化", "UI自动化", "接口自动化", "Web自动化"]

val_list[1] = "黑马程序员"

print(val_list) # ['Web自动化', '黑马程序员', '接口自动化', 'Web自动

化']

5.列表查询方法:索引

  • 语法:item = 列表[索引]
  • 说明: 索引就是数据在列表中的位置编号, 索引又被称为下标, 默认从0开始
  • 注意:使用不存在的索引,代码执行会报错!

name_list = ['张三', '李四']

print(name_list[0]) # 张三

print(name_list[1]) # 李四

6.列表反转方法:reverse()

  • 语法:列表.reverse()
  • 说明:反转列表, 将列表中的元素倒序
  • 注意:方法执行是对原数据进行的修改

num_list = [1, 2, 3, 4]

num_list.reverse()

print(num_list) # [4, 3, 2, 1]

7.列表排序方法:sort()

  • 语法:列表.sort(reverse=False)
  • 说明:将列表按指定规则进行数据排序, 默认为升序
  • 注意:reverse 表示排序规则,默认是False表示升序,设置为True表示降序

val_list = [8, 100, 30, 10, 40, 2]

val_list.sort(reverse=True)

print(val_list) # [100, 40, 30, 10, 8, 2]

8.列表统计方法:count()

  • 语法:num = 列表.count(目标数据)
  • 说明:统计被测试值出现的次数
  • 注意:如果目标数据不存在则返回 0

data_list = ['python', 'java', 'python', 'php']

print(data_list.count("python")) # 2

二、字典

1.字典的定义

  • 注意:字典中的键一般都使用字符串,并且键名不能重复(如果重复原数据会被覆盖)

2.字典增加

  • 语法:字典['键'] = 值
  • 说明:在字典中增加键值对或修改已有键对应的值
  • 提示:果键不存在, 则增加键值对; 如果键存在,则修改键对应的值

info = {

"name": "tom",

"age": 18

}

info["salary"] = 100000

print(info) # {'name': 'tom', 'age': 18, 'salary': 100000}

3.字典删除方法

  • 语法:字典.pop(键)
  • 说明:在字典数据中根据给出的键删除对应值
  • 提示:如果给出的键在字典中不存在, 代码执行会报错!

info = {

"name": "tom",

"age": 18,

"gender": "男"

}

info.pop("gender")

print(info) # {'name': 'tom', 'age': 18}

4.字典修改方法

  • 语法:字典['键'] = 值
  • 说明:在字典中增加键值对或修改已有键对应的值
  • 提示:如果键不存在, 则增加键值对; 如果键存在,则修改键对应的值

info = {

"name": "tom",

"age": 18

}

info["salary"] = 100000

print(info) # {'name': 'tom', 'age': 18, 'salary': 100000}

5.字典查询方法:get()

  • 语法:value = 字典.get(键)
  • 说明:通过键名查询对应值
  • 注意:如果查询的键在字典中不存在, 代码执行会返回 None(空值)!

info = {

"name": "tom",

"age": 18,

"gender": "男"

}

print(info.get("name")) # tom

print(info.get("abc")) # None

6.遍历字典的Key

  • 语法:for key in 字典.keys():
  • 说明 循环拿到字典中的每个键名

info = {

"name": "tom",

"age": 18,

"gender": "男"

}

for key in info.keys():

print(key)

7.遍历字典的Value

  • 语法:for value in 字典.values():
  • 说明:循环拿到每个键对应的值

info = {

"name": "tom",

"age": 18,

"gender": "男"

}

for value in info.values():

print(value)

8.遍历字典的key和value

  • 语法:for k, v in 字典.items():
  • 说明:循环拿到每个键和值
  • 提示:调用字典.items()方法获取字典的键和值,并自动赋值给不同的变量

info = {

"name": "tom",

"age": 18,

"gender": "男"

}

for k, v in info.items():

print(f"key={k} value={v}")

三、元组

1.元组的定义

  • 说明:元组和列表一样,都可用于存储多个数据,不同之处在于元组的元素不能修改
  • 注意:元组中只包含一个元素时,需要在元素后面添加逗号data = (1,)

2.元组查询方法: 索引

  • 语法:item = 元组[索引]
  • 注意:使用不存在的索引,代码执行会报错!

tuple1 = (1, 2, 3)

print(tuple1[1]) # 2

3.元组查询方法: count()

  • 语法:num = 元组.count(目标数据)
  • 说明:统计被测试值出现的次数
  • 注意:如果目标数据不存在则返回 0

tuple1 = (1, 2, 3)

print(tuple1.count(3)) # 1

4.元组的特殊用法:交换两个变量的值【面试题】

  • 说明:
    • 在 Python 中可以使用对应数据个数的变量, 获取对应元组数据中的每一个元素
    • 在 Python 中定义多个元素的元组数据时, 小括号可以省略
    • 借助以上两个特性, 可以通过元组快速实现交换两个变量的值

num1 = 100

num2 = 200

#交换两个变量的值

num2, num1 = num1, num2

print(num1) # 200

print(num2) # 100

相关推荐
聪明的笨猪猪9 小时前
Java JVM “内存(1)”面试清单(含超通俗生活案例与深度理解)
java·经验分享·笔记·面试
_dindong9 小时前
Linux网络编程:Socket编程TCP
linux·服务器·网络·笔记·学习·tcp/ip
摇滚侠10 小时前
Spring Boot 3零基础教程,WEB 开发 Thymeleaf 属性优先级 行内写法 变量选择 笔记42
java·spring boot·笔记
摇滚侠10 小时前
Spring Boot 3零基础教程,WEB 开发 Thymeleaf 总结 热部署 常用配置 笔记44
java·spring boot·笔记
rechol11 小时前
汇编与底层编程笔记
汇编·arm开发·笔记
lzj_pxxw11 小时前
嵌入式开发技巧:舍弃标志位,用宏定义函数实现程序单次运行
笔记·stm32·单片机·嵌入式硬件·学习
润 下12 小时前
C语言——回调函数的典型示例(分析详解)
c语言·开发语言·人工智能·经验分享·笔记·程序人生
朝新_12 小时前
【EE初阶 - 网络原理】传输层协议
java·开发语言·网络·笔记·javaee
koo36412 小时前
李宏毅机器学习笔记27
人工智能·笔记·机器学习
峰顶听歌的鲸鱼13 小时前
1.云计算与服务器基础
运维·服务器·笔记·云计算·学习方法