前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python基础——数据容器总结、通用方法和相互转换

python基础——数据容器总结、通用方法和相互转换

作者头像
用户11029137
发布2024-04-02 10:05:38
820
发布2024-04-02 10:05:38
举报
文章被收录于专栏:编程学习编程学习

📝前言: 在前段时间我们已经把python中常见的五大数据容器:列表、元组、字符串、集合、字典学习完了。 这篇文章主要对刚学习过的五大数据容器的特点做个总结,以及再介绍几个通用方法和它们之间相互转化的方法: 1,特点区分 2,通用方法 3,互相转换

🎬个人简介:努力学习ing 📋个人专栏:C语言入门基础以及python入门基础 🎀CSDN主页 愚润求学 🌄每日鸡汤:山穷水复疑无路,柳暗花明又一村


一、特点总结

这里是引用
这里是引用

二,通用方法

1,sorted排序功能

sorted() 是 Python 内置函数,用于对可迭代对象进行排序,如列表、元组(tuple)或字典(dict) 它返回一个新的已排序列表,而原列表保持不变。 基本语法:

代码语言:javascript
复制
sorted(iterable, *, key=None, reverse=False)

iterable:需要排序的可迭代对象。 ●key:用于定义排序的键函数。可以使用 key 参数来指定一个函数,该函数将在比较元素之前应用于每个元素。最后返回的值就是排序的新依据 (如果 key 参数指定了一个函数,那么这个函数应该只接受一个参数并返回一个值,该值将用于排序。) ●reverse:排序顺序。如果设置为 True,则列表将以降序排序。

(1)基本实例
代码语言:javascript
复制
list = [1,4,2,5,6]
tuple =(1,4,2,5,6)
str = "14256"
set = {1,4,2,5,6}
dict = {'c':1, 'a':3, 'b':2 }

print(sorted(list))
print(sorted(tuple))
print(sorted(str))
print(sorted(set))
print(sorted(dict))

输出结果:

值得注意的是: 1,排序完以后都是返回一个新的列表 2,字符串会被拆分成每个字符为一个元素 3,字典默认会根据它的键的字符串来排序

(2)使用reverse参数
代码语言:javascript
复制
data = [3, 1, 2, 4, 5]
sorted_data = sorted(data, reverse=True)
print(sorted_data)  # 输出: [5, 4, 3, 2, 1]
(3)使用key参数

示例一:

代码语言:javascript
复制
# 定义一个字典,其中包含学生姓名和分数
students = [
    {"name": "Alice", "score": 85},
    {"name": "Bob", "score": 90},
    {"name": "Charlie", "score": 80}
]

# 按分数降序排序
sorted_students = sorted(students, key=lambda x: x["score"], reverse=True)
print(sorted_students)
# 输出: [{'name': 'Bob', 'score': 90}, {'name': 'Alice', 'score': 85}, {'name': 'Charlie', 'score': 80}]

示例二:

代码语言:javascript
复制
# 通过key函数,根据元素的倒数对元素进行排序(因为是升序:倒数小的在前)
list = [1,4,2,5,6]
print(sorted(list, key= lambda x: 1/x))
# 输出结果:[6, 5, 4, 2, 1]

2,max和min函数

在 Python 中,maxmin 是内置函数,用于查找序列(如列表、元组、字符串等)中的最大和最小元素。 示例:

代码语言:javascript
复制
list = [1,4,2,5,6]
tuple =(1,4,2,5,6)
str = "14256"
set = {1,4,2,5,6}
dict = {'c':1, 'b':3, 'a':2 }

print(max(list), min(list))
print(max(tuple), min(tuple))
print(max(str), min(str))
print(max(set), min(set))
print(max(dict), min(dict))

输出:

注意:对字典使用的时候,也是根据键所代表的字符串

三,相互转换

转列表:list(), 转元组:tuple(),转字符串:str(),转集合:set() 因为字典的元素是键值对,所以一般无法直接转换成字典 (注意:转换后是返回一个新的,而不是在原有的数据容器上进行修改)

在这些数据容器进行转换的时候,需要注意: 一,转列表,元组,集合( list()tuple()set() ): 1,字符串转列表,元组或集合:会将字符串中每一个字符作为一个元素 2,字典转列表,元组或集合,会抛弃value, 留下的每一个key作为一个元素,但是也可以通过values()得到全部键以后,在将其转换成列表 3,转集合后,元素会变得无序 二,转字符串 是整体直接加双引号变成字符串,如: [1,2,3,4,5] 变成: “[1,2,3,4,5]” (1,2,3,4,5) 变成:“(1,2,3,4,5)”

1,示例(转列表):

代码语言:javascript
复制
my_list = [1,4,2,5,6]
my_tuple =(1,4,2,5,6)
my_str = "14256"
my_set = {1,4,2,5,6}
my_dict = {'c':1, 'b':3, 'a':2 }

print(list(my_tuple))
print(list(my_str))
print(list(my_set))
print(list(my_dict))

输出:

2,示例(转字符串):

代码语言:javascript
复制
my_list = [1,4,2,5,6]
my_tuple =(1,4,2,5,6)

print(str(my_list), str(my_list)[0], str(my_list)[2], str(my_list)[3])
print(str(my_tuple), str(my_tuple)[0], str(my_tuple)[2], str(my_tuple)[3])

输出:

可见:确实是将一个整体变成了字符串(还有空格)

3,结合zip转字典

zip() 函数是 Python 的一个内置函数,用于将两个或多个可迭代对象(如列表、元组或字符串)的元素组合成一个新的迭代器。每次迭代会返回一个元组,其中的元素分别来自各个输入可迭代对象。

基本语法:

代码语言:javascript
复制
zip(*iterables)

其中 *iterables 表示要组合的输入可迭代对象。 示例:

代码语言:javascript
复制
keys = ['a', 'b', 'c']
values = [1, 2, 3]
d = dict(zip(keys, values))
print(d)
# 输出:{'a': 1, 'b': 2, 'c': 3}

四,总结

先对操作方法进行总结:

对是否返回新的进行讨论:

1, 列表:基本上都是直接在原列表的基础上修改(无返回) 2, 元组(不可修改的list)除去list中对元素进行修改的操作,[但是可以对元组里面的元素list的元素进行修改] 3, 字符串:不可修改,基本上都是得到新的字符串 4, 集合:可修改,直接对原来的修改。但是union和difference是返回新集合。difference_update则是对集合1进行修改 5, 字典:可修改,直接对原来的修改,但是字典中的keys和values功能,会返回一个收集了全部键or值的数据容器 6, 切片操作(序列:列表,元组,字符串可用):从原序列里面找到一个子序列,并返回这个子序列(新) 7, 类型转换:list()、tuple()、str() 和 set() 这些函数在转换或创建新的对象时,都会返回一个新的对象,而不是在原地修改原始对象。


🌈我的分享也就到此结束啦🌈 要是我的分享也能对你的学习起到帮助,那简直是太酷啦! 若有不足,还请大家多多指正,我们一起学习交流! 📢公主,王子:点赞👍→收藏⭐→关注🔍 感谢大家的观看和支持!祝大家都能得偿所愿,天天开心!!!

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2024-04-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、特点总结
  • 二,通用方法
    • 1,sorted排序功能
      • (1)基本实例
      • (2)使用reverse参数
      • (3)使用key参数
    • 2,max和min函数
    • 三,相互转换
      • 1,示例(转列表):
        • 2,示例(转字符串):
          • 3,结合zip转字典
          • 四,总结
          相关产品与服务
          容器服务
          腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档