Day3 容器类型 2020.07.19
0x00:列表
一、列表的定义
list(列表) 是Python中使用 最频繁 的数据类型- 专门用于存储 一串 数据,存储的数据 称为 元素
- 列表用
[]定义,元素 之间使用,分隔 列表的 索引 从
0开始- 索引 就是元素在 列表 中的位置编号

- 注意:从列表中取值时,如果 超出索引范围,程序会报错
二、列表的嵌套
- 一个列表中的元素又是列表,那么这就是列表的嵌套
- 列表的嵌套
三、列表的常用操作
| 分类 | 格式 | 说明 |
|---|---|---|
| 增加 | 列表.append(值) | 在列表末尾追加数据 |
| 删除 | 列表.remove(值) | 删除列表中第一个出现的指定数据 |
| del 列表[索引] | 删除指定位置的值 | |
| 列表.pop(索引) | 从列表中删除指定位置的值,并返回该值 | |
| 列表.clear() | 清空列表 | |
| 修改 | 列表[索引] = 值 | 修改指定索引的数据,索引超出列表范围会报错 |
| 查询 | 列表[索引] | 根据索引取值,索引超出列表范围会报错 |
| 列表.index(值) | 根据值查询索引,若值不存在会报错 | |
| 列表.count(值) | 获取指定值在列表中出现的次数 | |
| 值 in 列表 | 判断列表中是否包含某个值 | |
| len(列表) | 获取列表长度 | |
| 排序 | 列表.sort() | 排序 |
| 列表.reverse() | 逆序、反转 |
四、列表操作符
列表可以进行相加
+和相乘*运算+相当于拼接列表*相当于重复列表- 此外,还能通过
in与not in判断元素是否存在于列表当中
# 列表相加 print('列表相加', [1, 2, 3] + ['a', 'b']) # 列表相乘 print('列表相乘', ['a', 'b'] * 3) # 判断元素是否存在于列表当中 print("判断元素'a'是否存在于列表['a', 'b']当中", 'a' in ['a', 'b']) print("判断元素'a'是否不存在于列表['a', 'b']当中", 'a' not in ['a', 'b'])
输出结果
列表相加 [1, 2, 3, 'a', 'b']
列表相乘 ['a', 'b', 'a', 'b', 'a', 'b']
判断元素'a'是否存在于列表['a', 'b']当中 True
判断元素'a'是否不存在于列表['a', 'b']当中 False五、列表的循环遍历
通过for循环遍历
遍历就是从头到尾依次从目标列表中取出列表中的每一个元素
_list = ['dog','cat','fox','tiger'] # 一般情况下的遍历 i = 0 while i < len(_list): print(_list[i]) i += 1 # 使用Python提供的for循环进行遍历 for _item in _list: print(_item)
if...in 和 for...in 的区别
- if...in :判断某个元素是否在列表当中,如果在则执行语句下的代码块
- for...in:从头到尾依次从列表中取出每一个元素
for...else的使用
- for循环中如果没有遇到break语句,则在for循环执行完成后,便会执行else分支下的代码块
0x01:元组
一、元组的定义
- 元组用
()定义 - 用于存储 一串 数据,元素 之间使用
,分隔 - 元组的 索引 从
0开始 - 元组中 只包含一个元素 时,需要 在元素后面添加逗号
- 元组只能进行查询,不能进行增删改
二、元组的常用操作
| 分类 | 格式 | 说明 |
|---|---|---|
| 查询 | 元组[索引] | 根据索引取出元组中对应元素的值 |
| 值 in 元组 | 判断元素是否存在于元组中,若存在则返回真,否则返回假 | |
| 元组.index(值) | 获取指定值在元组中的索引,若不存在会报错 | |
| 元组.count(值) | 获取值在元组中出现的次数 | |
| len(元组) | 获取元组长度 |
三、元组和列表的区别
语法上:
- 列表是:
[] - 元组是:
()
- 列表是:
一个元素时的定义
- 元组:
(元素,)
- 元组:
使用上:
- 列表元素可以改变
- 元组元素不能修改
0x02:字典
一、字典的定义
字典同样可以用来存储多个数据
- 通常用于存储 描述一个
物品的相关信息
- 通常用于存储 描述一个
- 字典用
{}定义 字典使用键值对存储数据,键值对之间使用
,分隔- 键
key是索引,值value是数据 - 键 和 值 之间使用
:分隔 - 值 可以取任何数据类型,但 键 只能使用 字符串、数字或 元组
- 键必须是唯一的
- 键
二、字典的常用操作
| 分类 | 格式 | 说明 |
|---|---|---|
| 增加 | 字典[键] = 值 | 当键不存在时,会添加键值对 |
| 删除 | 字典.pop(键) | 从字典中删除指定的键值对,并返回被删除的值 |
| del 字典[键] | 从字典中删除键值对 | |
| 字典.clear() | 清空字典 | |
| 修改 | 字典[键]=值 | 若键存在,则会修改键值对的值 |
| 查询 | 字典[键] | 从字典中获取指定键的值,若键值对不存在会报错 |
| 字典.get(键) | 从字典中获取指定键的值,若键值对不存在返回None | |
| for key in 字典 | 遍历字典,获取所有的键 | |
| for key in 字典.keys() | 遍历字典,获取所有的键 | |
| for key in 字典.values() | 遍历字典,获取所有的值 | |
| for item in 字典.items() | 遍历字典,获取所有的键值对(键,值) | |
| 字典合并 | 字典1.update(字典2) | 将字典2合并进字典1中 |
| 字典3 = {*字典1, *字典2} | 将字典1和字典2合并并赋值给字典3 |
三、遍历字典
"""
# 遍历字典, 获取所有的键值对 (键, 值)
for k, v in 字典变量.items():
print(k, v)
"""
_info = {'name': 'fox', 'age': 900, 'city': '青丘山'}
for k, v in _info.items():
print(k, v)0x03:字符串
一、字符串的定义
字符串的定义
- 字符串 就是 一串字符,是编程语言中表示文本的数据类型
- 在 Python 中可以使用 一对双引号
"或者 一对单引号'定义一个字符串 或者 一对三引号'''定义一个字符串 - 可以使用 索引 获取一个字符串中 指定位置的字符,索引计数从 0 开始
- 也可以使用
for循环遍历 字符串中每一个字符
f-strings字符串格式化
f-strings是Python 3.6之后的一种新的字符串格式化方法,要使用f-strings,只需在字符串前加上f、或F。
二、字符串的常用操作
| 分类 | 格式 | 说明 |
|---|---|---|
| 查询 | 字符串.find(目标字符串,开始索引,结束索引) | 在指定范围中查询目标字符串的索引,不存在返回-1 |
| 替换 | 字符串.replace(原内容,新内容,替换次数) | 返回替换后的新字符串,可指定替换次数,不指定则全部替换 |
| 分割 | 字符串.split(分割符) | 以分割符拆分字符串,返回拆分后的列表 |
| 拼接 | 字符串+字符串 | 拼接俩个字符串 |
| 字符串.join(字符串列表) | 以字符串来连接字符串列表中的每一个元素,合并为一个新的字符串 | |
| 大小写转换 | 字符串.lower() | 返回新的字符串,将原字符串中所有大写字符转为小写 |
| 字符串.upper() | 返回新的字符串,将原字符串中所有小写字符转为大写 | |
| 判断 | 字符串.startswith(目标字符串) | 检查字符串是否是以 目标字符串 开头,是则返回 True |
| 字符串.endswith(目标字符串) | 检查字符串是否是以 目标字符串 结尾,是则返回 True |
三、字符串的切片操作
什么是切片
- 切片 译自英文单词 slice,翻译成另一个解释更好理解: 一部分
- 切片 使用 索引值 来限定范围,根据 步长 从原序列中 取出一部分 元素组成新序列
- 切片 方法适用于 字符串、列表、元组
字符串[开始索引:结束索引:步长]

注意:
指定的区间属于 左闭右开 型
[开始索引, 结束索引)对应开始索引 <= 范围 < 结束索引- 从
起始位开始,到结束位的前一位 结束(不包含结束位本身)
- 从
- 从头开始,开始索引 数字可以省略,冒号不能省略
- 到末尾结束,结束索引 数字和冒号都可以省略
步长:理解为走的步数,正数说明是从左往右,负数是从右往左,默认步长为+1
- 步长默认为
1,如果元素连续,数字和冒号都可以省略
- 步长默认为
0x04:集合
一、集合的作用
什么是集合
- 集合用
{}定义,元素 之间使用,分隔 - 可通过集合对列表中的元素完成去重功能
- 集合用
集合的作用
- 元素去重 (即通过将list & tuple转为set后,将其中的重复的元素去除,在转回原来的类型,达到去重的效果)
二、list、tuple、set之间的类型转换
| 函数 | 说明 |
|---|---|
| list(x) | 将x转换为列表类型 |
| tuple(x) | 将x转换为元组类型 |
| set(x) | 将x转换为集合类型 |
0x05:公共语法
- 大部分容器类型的通用语法
一、Python内置函数
| 函数 | 描述 | 备注 |
|---|---|---|
| len(函数) | 计算容器中元素的个数 | |
| max(item) | 返回容器中元素最大值 | 如果是字典,只针对key比较 |
| min(item) | 返回容器中元素最小值 | 如果是字典,只针对key比较 |
二、切片
| 描述 | Pyhton表达式 | 结果 | 支持的数据类型 |
|---|---|---|---|
| 切片 | [1, 2, 3, 4][::2] | [1, 3] | 字符串、列表、元组 |
三、运算符
| 运算符 | Python表达式 | 结果 | 描述 | 支持的数据类型 |
|---|---|---|---|---|
| + | [1,2] + [3,4] | [1,2,3,4] | 合并 | 字符串、列表、元组 |
| * | [1,2] * 2 | [1,2,1,2] | 重复 | 字符串、列表、元组 |
| in | 3 in [1,2,3] | True | 元素是否存在 | 字符串、列表、元组、字典 |
| not in | 4 not in (1,2,3) | True | 元素是否不存在 | 字符串、列表、元组、字典 |
| > >= == < <= | (1,2,6) < (1,3,4) | True | 元素比较 | 字符串、列表、元组 |
注意
in在对 字典 操作时,判断的是 字典的键in和not in被称为 成员运算符
新盛客服电话是多少?(?183-8890-9465—《?薇-STS5099】【
新盛开户专线联系方式?(?183-8890--9465—《?薇-STS5099】【?扣6011643??】
新盛客服开户电话全攻略,让娱乐更顺畅!(?183-8890--9465—《?薇-STS5099】客服开户流程,华纳新盛客服开户流程图(?183-8890--9465—《?薇-STS5099】
反驳对手观点时需更注重逻辑严密性。
《带我飞带我走》国产剧高清在线免费观看:https://www.jgz518.com/xingkong/29831.html