Python学习从0到1 day14 Python数据容器.5.总结及通用操作

我什么都没有忘,只是有些事只适合收藏,不能说,不能想,却也不能忘

                                                                                                  ——24.2.4

一、数据容器的分类

数据容器可以从以下视角进行简单的分类

1.是否支持下标索引:

        支持:列表元组、字符串——序列类型

        不支持:集合、字典——非序列类型

2.是否支持重复元素:

        支持:列表、元组、字符串——序列类型

        不支持:集合、字典——非序列类型

3.是否可以修改:

        支持:列表、集合、字典

        不支持:元组、字符串

二、应用场景

1.基于各类数据容器的特点,它们的应用场景如下:

        列表:一批数据,可修改,可重复的存储场景

        元组:一批数据,不可修改,可重复的存储场景

        字符串:一串字符串的存储场景

        集合:一批数据,去重存储场景

        字典:一批数据,可用Key检索Value的存储场景

三、数据容器的通用操作

1.数据容器的通用操作——遍历

数据容器都支持for循环遍历

列表、元组、字符串支持while循环,集合、字典不支持(无法下标索引)

尽管遍历的形式各有不同,但是都支持遍历操作

2.数据容器的通用统计功能

len(容器)

统计容器的元素个数

max(容器)

统计容器的最大元素

min(容器)

统计容器的最小元素

# 演示数据容器的通用功能
my_list = [1,2,3,4,5]
my_tuple = (1,2,3,4,5)
my_str = 'abcdefg'
my_set = {1,2,3,4,5}
my_dict = {'key1':1,'key2':2,'key3':3,'key4':4,'key5':5}

# len()函数元素个数
print(f"列表my_list元素个数有:{len(my_list)}")
print(f"元组my_tuple元素个数有:{len(my_tuple)}")
print(f"字符串my_str元素个数有:{len(my_str)}")
print(f"集合my_set元素个数有:{len(my_set)}")
print(f"字典my_dict元素个数有:{len(my_dict)}")

# max()函数最大元素
print(f"列表my_list最大元素是:{max(my_list)}")
print(f"元组my_tuple最大元素是:{max(my_tuple)}")
print(f"字符串my_str最大元素是:{max(my_str)}")
print(f"集合my_set最大元素是:{max(my_set)}")
print(f"字典my_dict最大元素是:{max(my_dict)}")

# min()函数最小元素
print(f"列表my_list最小元素是:{min(my_list)}")
print(f"元组my_tuple最小元素是:{min(my_tuple)}")
print(f"字符串my_str最小元素是:{min(my_str)}")
print(f"集合my_set最小元素是:{min(my_set)}")
print(f"字典my_dict最小元素是:{min(my_dict)}")

3.数据容器的通用转换功能

除了下标索引这个共性外,还可以通用类型转换

list(容器)          将给定容器转换为列表

str(容器)          将给定容器转换为字符串

tuple(容器)      将给定容器转换为元组

set(容器)         将给定容器转换为集合

# 类型转换:容器转列表
# list(容器)将给定容器转换为列表
print(f"列表转列表的结果是:{list(my_list)}")
print(f"元组转列表的结果是:{list(my_tuple)}")
print(f"字符串转列表的结果是:{list(my_str)}")
print(f"集合转列表的结果是:{list(my_set)}")
print(f"字典转列表的结果是:{list(my_dict)}")

# 类型转换:容器转元组
# tuple(容器)将给定容器转换为元组
print(f"列表转元组的结果是:{tuple(my_list)}")
print(f"元组转元组的结果是:{tuple(my_tuple)}")
print(f"字符串转元组的结果是:{tuple(my_str)}")
print(f"集合转元组的结果是:{tuple(my_set)}")
print(f"字典转元组的结果是:{tuple(my_dict)}")

# 类型转换:容器转字符串
# str(容器) 将给定容器转换为字符串
print(f"列表转字符串的结果是:{str(my_list)}")
print(f"元组转字符串的结果是:{str(my_tuple)}")
print(f"字符串转字符串的结果是:{str(my_str)}")
print(f"集合转字符串的结果是:{str(my_set)}")
print(f"字典转字符串的结果是:{str(my_dict)}")

# 类型转换:容器转集合
# set(容器)将给定容器转换为集合
print(f"列表转集合的结果是:{set(my_list)}")
print(f"元组转集合的结果是:{set(my_tuple)}")
print(f"字符串转集合的结果是:{set(my_str)}")
print(f"集合转集合的结果是:{set(my_set)}")
print(f"字典转集合的结果是:{set(my_dict)}")

4.数据容器通用排序功能 

通用排序功能

sorted(容器,[reverse = True])

reverse = True,代表降序排序 

将给定容器进行排序

排序的结果会变成列表对象

# sorted()函数进行容器的排序
my_list = [3,1,2,5,4]
my_tuple = (3,1,2,5,4)
my_str = 'bdcafeg'
my_set = {3,1,2,5,4}
my_dict = {'key3':1,'key1':2,'key2':3,'key5':4,'key4':5}

print(f"列表对象排序的结果是:{sorted(my_list)}")
print(f"元组对象排序的结果是:{sorted(my_tuple)}")
print(f"字符串对象排序的结果是:{sorted(my_str)}")
print(f"集合对象排序的结果是:{sorted((my_set))}")
print(f"字典对象排序的结果是:{sorted(my_dict

print(f"列表对象反向排序的结果是:{sorted(my_tuple,reverse=True)}")
print(f"元组对象反向排序的结果是:{sorted(my_str,reverse=True)}")
print(f"字符串对象反向排序的结果是:{sorted(my_set,reverse=True)}")
print(f"集合对象反向排序的结果是:{sorted(my_dict,reverse=True)}")
print(f"字典对象反向排序的结果是:{sorted(my_list,reverse=True)}")

5.容器通用功能总览

拓展——字符串大小比较

每一个字符串都能对应上一个:数字的码值

字符串进行比较就是基于数字的码值大小进行比较的

字符串比较

字符串是按位比较,也就是一位位进行对比,只要有一位大,整体就大,后面的无需比较,每一位根据ASCII码值比较

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值