网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
删除末尾数据
mylist.pop()
print(mylist) # [‘祢豆子’, ‘漩涡鸣人’]
清空
mylist.clear()
print(mylist) # []
🍎 **结果:**
![在这里插入图片描述](https://img-blog.csdnimg.cn/2191aa51aad44cb0a048b5726b496891.png)
**同时,删除数据也可以通过 del 关键字实现,但是需要注意区别:使用 del 是从内存上删除变量,后续的代码就不能使用这个变量了**
mylist = [“黄小黄”, “祢豆子”, “漩涡鸣人”, “草帽路飞”]
del mylist[1]
print(mylist) # [‘黄小黄’, ‘漩涡鸣人’, ‘草帽路飞’]
del mylist
print(mylist) # NameError: name ‘mylist’ is not defined
#### 1.2.4 列表中的统计方法
🍑 常用的列表统计方法如下表:
| 方法名 | 说明 |
| --- | --- |
| len(list) | 统计列表中的元素种数 |
| count(object) | 统计列表中某一数据出现的次数 |
🐭 **参考代码示例:**
mylist = [“黄小黄”, “祢豆子”, “漩涡鸣人”, “草帽路飞”, “黄小黄”]
mylist_len = len(mylist)
print(“列表的长度(元素个数): %d” % mylist_len) # 5
count = mylist.count(“黄小黄”)
print(“黄小黄 出现的次数: %d” % count) # 2
🍊 **结果:**
![在这里插入图片描述](https://img-blog.csdnimg.cn/7a9e480c26504519871c735456f5fa1c.png)
#### 1.2.5 列表的排序与反转
🍑 相关方法如下表:
| 方法名 | 说明 |
| --- | --- |
| sort() | 升序排序 |
| sort(reverse = True) | 降序排序 |
| reverse() | 反转列表 |
**需要注意的是,升序排序对于数字而言是从小到大;对于字符串和字符而言,是字典顺序,比如 a 比 z 小**
🐯 **参考示例代码:**
words = [“abc”, “Abc”, “z”, “dbff”]
nums = [9, 8, 4, 2, 2, 3]
升序排序
words.sort()
nums.sort()
print(words) # [‘Abc’, ‘abc’, ‘dbff’, ‘z’]
print(nums) # [2, 2, 3, 4, 8, 9]
降序排序
words.sort(reverse=True)
nums.sort(reverse=True)
print(words) # [‘z’, ‘dbff’, ‘abc’, ‘Abc’]
print(nums) # [9, 8, 4, 3, 2, 2]
反转
nums.reverse()
print(nums) # [2, 2, 3, 4, 8, 9]
🐔 **结果:**![在这里插入图片描述](https://img-blog.csdnimg.cn/9dc10686acbb46fc88894b0e92dc56e7.png)
### 1.3 列表的迭代遍历
🆔 遍历是指从头到尾依次从列表中获取数据,使用 `for` 循环就很容易实现,语法基础格式如下:
for 循环内部使用的变量 in 列表
for name in name_list:
# 循环内部对列表进行的操作
print(name) # 比如打印
🐱 **示例代码与结果:**
student_list = [“黄小黄”, “马小淼”, “大头”, “小牛马”]
迭代遍历
for student in student_list:
print(student)
![在这里插入图片描述](https://img-blog.csdnimg.cn/5ac72b80ece541d480584111a723509d.png)
---
## 2 元组
### 2.1 元组说明
* `Tuple` 元组与列表类似,最大的区别是元组的 **元素不能修改**
* 元组表示多个元素组成的序列,用于存储一串信息,数据之间使用 `,` 分隔;
* 元组使用 `( )` 定义,索引从 `0` 开始。
**示例1️⃣ 创建一个空元组**
tuple = ()
**示例2️⃣ 创建一个元组**
tuple = (“黄小黄”, “路飞”, “娜美”)
**元组只包含一个元素时,需要在元素后面加 `,`**
### 2.2 元组的常用操作
>
> 由于元组中的元素是不可变的,因此 python 提供的元组方法通常为只读,常用的有 `index()` 和 `count()`
>
>
>
👂 **示例代码与结果:**
my_tuple = (“黄小黄”, “马小淼”, “草帽路飞”, “黄小黄”)
读取索引
print(my_tuple.index(“马小淼”)) # 1
统计出现次数
print(my_tuple.count(“黄小黄”)) # 2
### 2.3 元组的迭代遍历
🐒 与列表的遍历类似,但是在实际开发中,我们并不常常遍历元组,除非能够确认 **元组中元素的数据类型。**
for 循环内部使用的变量 in 元组
for name in name_touple:
# 循环内部对元组进行的操作
print(name) # 比如打印
🐴**小结:** **在 Python 中可以使用 for 循环遍历所有非数字类型的变量:列表、元组、字符串以及字典**
### 2.4 元组与列表的相互转化
* 元组转化为列表,通过 `list` 函数实现
* 列表转化为元组,通过 `tuple` 函数实现
🐴 **参考代码:**
temp_tuple = (“黄小黄”, “马小淼”, “草帽路飞”)
my_list = list(temp_tuple)
print(my_list)
print(type(my_list))
my_tuple = tuple(my_list)
print(my_tuple)
print(type(my_tuple))
🏠 **结果:**
![在这里插入图片描述](https://img-blog.csdnimg.cn/af90da7a9e57442a983b05a6428d9045.png)
---
## 3 字典
### 3.1 字典说明
* 字典使用 `{}` 定义,是 **无序的对象集合**;
* 字典使用 **键值对** 存储数据,其间使用 `,` 分隔;
* 键 `key` 是索引,值 `value` 是数据;
* 键值之间使用 `:` 分隔;
* **键必须是唯一的,且必须为字符串、数字或元组,值可以为任何数据类型。**
🐇 **下面我们来简单定义一个字典,代码如下:**
nezuko = {“name”: “祢豆子”,
“age”: 6,
“height”: 145,
“phone”: 123456789}
通过图示,详细了解字典的存储结构:
![在这里插入图片描述](https://img-blog.csdnimg.cn/3d2ae173c0834963967f100419c3e6c6.png)
### 3.2 字典的常用操作
#### 3.2.1 字典的查找与增删改
⭕️ 通过对列表和元组的学习,想必已经对索引取值已经增添删除数据有了一定的认识,这里直接上代码举例:
🐘 **1. 查找值**
**字典的取值同样通过索引的方式来取值,只不过,字典的索引是key。需要注意的是,进行取值操作时,如果指定的key不存在,程序会报错!**
nezuko = {“name”: “祢豆子”,
“age”: 6,
“height”: 145,
“phone”: 123456789}
查找值,取值
print(nezuko[“name”])
print(nezuko[“age”])
print(nezuko[“height”])
print(nezuko[“phone”])
![在这里插入图片描述](https://img-blog.csdnimg.cn/e0d18851c1f8400c9bf94783406a1887.png)
🐖 **2. 增添及修改值**
**在 python 中增添与修改值很简单,只需要使用索引添加或修改。如果key存在,则会修改数据;如果key不存在,则会新增键值对。**
nezuko = {“name”: “祢豆子”,
“age”: 6,
“height”: 145,
“phone”: 123456789}
添加
nezuko[“性别”] = “女”
修改
nezuko[“age”] = 3
打印
print(nezuko)
![在这里插入图片描述](https://img-blog.csdnimg.cn/82b4daeac9f3412fb882e1fc558b02ca.png)
🐻 **3. 删除值与字典**
**删除有两种方式,使用 pop() 方法指定 key 删除或者使用关键字 del 并指定 key 删除。当然,也可以通过 del 关键字删除字典。**
nezuko = {“name”: “祢豆子”,
“age”: 6,
“height”: 145,
“phone”: 123456789}
删除
del nezuko[“phone”]
nezuko.pop(“height”)
print(nezuko)
删除字典
del nezuko
print(nezuko)
![在这里插入图片描述](https://img-blog.csdnimg.cn/4e8cf8e2f9264f23813352374a7fde77.png)
#### 3.2.2 字典的统计、合并与清空
🍊 **涉及到的方法一览表:**
| 方法名 | 说明 |
| --- | --- |
| len(dict) | 统计字典键值对的数量 |
| update(temp\_dict) | 将 update\_dict 字典与原字典合并,如果被合并的字典包含已经存在的键值对,会覆盖原有的键值对 |
| clear() | 清空字典中的所有元素 |
🐴 **示例代码:**
nezuko = {“name”: “祢豆子”,
“age”: 6,
“height”: 145,
“phone”: 123456789}
统计键值对个数
nezuko_count = len(nezuko)
print(“字典 nezuko 键值对个数为: %d” % nezuko_count)
合并两个字典
nezuko_new = {“性别”: “女”,
“爱好”: “咬竹筒”,
“age”: 10}
nezuko.update(nezuko_new)
print(“合并后” + str(nezuko))
清空列表元素
nezuko.clear()
print("清空后: " + str(nezuko))
🍎 **结果:**
![在这里插入图片描述](https://img-blog.csdnimg.cn/2e673d2940cd4350afa0a18fb45f09d8.png)
### 3.3 字典的迭代遍历
🐒 在实际开发中,字典的遍历需求并不多,**因为我们无法确定字典中的每一个键值对保存的数据类型。**
🆔 **遍历语法:**
for 循环内部使用的 key 变量 in 字典名
for k in dict:
# 具体操作
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
求并不多,因为我们无法确定字典中的每一个键值对保存的数据类型。
🆔 遍历语法:
# for 循环内部使用的 key 变量 in 字典名
for k in dict:
# 具体操作
[外链图片转存中...(img-Y19DcwWc-1715799273752)]
[外链图片转存中...(img-O2QXoyJi-1715799273752)]
**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**
**[需要这份系统化资料的朋友,可以戳这里获取](https://bbs.csdn.net/topics/618545628)**
**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**