当前位置: 首页 > news >正文

python数据容器快速回顾

python数据容器快速回顾

一、数据容器

(一)列表

1.变量名称 = [元素,…,元素]

2.定义空列表:

​ list_name = []

​ list_name = list()

3.列表的方法:

​ (1)查询特定元素的下标:list.index(元素)

​ (2)修改特定下标的元素值:list[下标] = 值

​ (3)插入元素:list.insert(下标,元素) ,在指定的下标位置插入指定元素

​ (4)追加元素:

​ list.append(元素), 将指定元素追加到列表的尾部

​ list.extend(其他数据容器)

​ (5)删除元素:del.list[下标] list.pop[下标] list.remove(元素)

​ (6)清空列表:list.clear()

​ (7)统计某元素在列表中的数量:list.count(元素)

​ (8)统计列表中全部的元素数量:len(list)

(二)字典

1.字典用来储存键值对,eg:contacts = {“张伟”:23,“小明”:21},键的类型必须是不可变的

2.字典的方法:

​ (1)从字典中居于key获取value:age = contacts[“张伟”]

​ (2)定义空字典:my_dict = {} my_dict = dict()

​ (3)新增元素/更新元素:contacts[“小美”] = 18,如果key不存在,则增加元素,如果key存在,则修改对应的value

​ (4)删除元素:contacts.pop(“张伟”),结果是获得对应位置的value,并且字典被修改,指定key的数据被删除

​ (5)清空字典:contacts.clear()

​ (6) 获取全部的key:contacts.keys()

# 创建一个包含10条信息的字典info_dict={"001":"张三","002":"李四","003":"王五","004":"赵六","005":"陈七","006":"周八","007":"吴九","008":"郑十",}# 字典里没有这两个key,就会新增这两个元素info_dict["009"]="孙一"info_dict["010"]="刘二"#实现查询功能query=input("请输入你想要查询的号码:")ifqueryininfo_dict:print("您查询的号码"+query+"对应:")print(info_dict[query])else:print("该号码不存在!")print("当前收录了人数为:"+str(len(info_dict))+"人")

(三)元组

元组是不可变的,一旦定义完成就不可修改,这里的不能变值得是它内部指向的对象,元组用的是(), 列表用的是[]

注意:如果某个元素本身是一个可变对象,如列表、字典,那么元组的元素可以修改

t1=(1,2,["hello","world"])print(f"t1的内容:{t1}")t1[2][0]="你好"t1[2][1]="世界"print(f"t1的内容是:{t1}")

大白话:元组就像一个带锁的抽屉,抽屉里放着一些盒子。你不能把盒子 A 换成盒子 B,但是,你可以打开盒子 A,把里面的东西换成别的。

1.元组定义使用小括号(),且使用逗号隔开各个元素,数据可以是不同的数据类型: t1 = (1, “hello”, “true”,“hello”) , t2 = (), t2 = tuple()

​ 如果定义元组中只有一个元素,最后要加括号哦!

2.元组的操作:

​ 查询:num = t1[1] ,元组跟列表一样支持下标的索引,同样也支持嵌套,可以通过跟列表一样的方式遍历元组。

​ index查找:index = t1.index(“hello”)

​ 统计元素个数:hello_num = t1.count(“hello”)

​ 统计元素数量:t_num = len(t1)

(四)字符串

1.字符串可以存放任意数量的字符,同样支持下标(此处不再赘述下标相关的,直接参考上述数据容器)

2.字符串的操作:str_example = “hello” + " "+ “world”

​ 字符串的替换replace:str_example.replace(“Hello”, “hello”)

​ 字符串的分割:str_example_list = str_example.split(" "),将原来的字符串划分为多个小的字符串,并存入一个列表中,得到的是一个列表类型的对象

​ 规则一个字符串strip:str_example2 = " my name is Sebrina ",如果没有参数就是去除前后的空格str_example2_strip1 = str_example2.strip(),如果有参数就是去除指定的字符串str_example2_strip2 = str_example2.strip(“is”)

​ 统计字符串中某字符串出现的次数count: h_num = str_example.count(“h”)

​ 统计字符串的长度len():num = len(str_example2)

(五)序列

指的是连续、有序,可以使用下标的所有数据容器

1.实用的操作:序列的切片,序列[起始下标:结束下标:步长],从起始下标开始每跳过“步长 - 1”个元素取值,直到结束下标为止。如果步长是正数就正着取,是负数就反向倒着取。

起始和结束可以省略,分别表示从头开始和到尾结束,如果步长为1也可以省略。

(六)集合

上述所有数据容器都支持重复元素,但集合不能有重复的元素,自带去重功能同时是无序的。

1.由于集合无序,所以无法使用下标索引,但是同样是允许修改的。

2.集合的操作:my_set = {“我”,“和”,“和”,“你”,“心连心”,“心连心”,“同住”,“地球”,“地球”,“村”}

​ 添加新元素:my_set.add(“他”)

​ 删除元素:my_set.remove(“你”),第三者上位了

​ 随机移除一个元素pop:my_element = my_set.pop(),随机取出一个元素,并且这个元素会从原来集合中删除

​ 清空集合:my_set.clear()

​ 集合的差集和并集:my_set2 = {“我”,“和”,“你”},

​ 取差集set_res1 = my_set.difference(my_set2),找的是集合1中有的但集合2中没有的,消除差集my_set.difference_update(my_set2),在集合1中消除和集合2中相同的元素(集合1会改变但是集合2不会改变)。

​ 取并集set_res2 = my_set.union(my_set2),将两个集合合并形成一个新的集合

http://www.jsqmd.com/news/466114/

相关文章:

  • 萧邦宝格丽百年灵|南京,上海,深圳等六大城市腕表养护维修指南,守护奢华质感与保值价值 - 时光修表匠
  • 不必焦虑,多数人没必要自己部署 OpenClaw
  • 海伯森发布高真空系列点光谱共焦传感头
  • 分析2026年实力强的美国投资移民企业,如何选择更明智 - 工业品网
  • Typecho 常见报错与修复大全(所有报错通用)
  • 前端中stylus是干嘛用的
  • 内外网文件交换系统产品推荐,Ftrans为企业跨网交互保驾护航
  • AutoGen学习以及案例实践
  • OpenClaw 完全上手指南:从安装到实战的 8 个步骤
  • 从技术专家到项目舵手:实战经验谈技术视角下的项目管理
  • 【JAVA基础02】—— 数据类型与变量全解析
  • 【LLM基础】2.Transformer原理
  • @ContentFontStyle注解颜色说明
  • 算法漏洞猎人:AI标注优化对象的专业剖析
  • 2026年热门的智能预制钢结构品牌推荐:装配式预制钢结构/出海预制钢结构工程高评分公司推荐 - 行业平台推荐
  • 力扣第十题C++正则表达式匹配
  • Linux系统安装nginx并配置反向代理
  • [2026.3.11]WIN11.25H2.26200.8037[PIIS]中简极速优化版 运行流畅稳定
  • 体积表面电阻率测试仪品牌推荐,教你选对不选贵 - 品牌推荐大师
  • RDMA设计60:RDMA队列管理及连接建立功能测试3
  • 技术债公墓的守墓人:测试工程师的生存启示录
  • 2026年北京写字楼出租推荐榜单:CBD/望京/三元桥/国贸/东三环等核心商圈优质办公空间深度解析与选址指南 - 品牌企业推荐师(官方)
  • 【边打字.边学昆仑正义文化】_10_幸福维度(2)
  • 【零基础配置 Claude Code 状态栏 完整教程】
  • Agent的大脑:大模型如何让AI从工具变伙伴
  • 西南防静电地板优质企业推荐榜单:玻璃地板/硫酸钙地板/网络地板/通风地板/铝合金地板/防静电地板/陶瓷地板/全钢地板/选择指南 - 优质品牌商家
  • 网站访问提示“Call to undefined function think\exception\config()”
  • Mac-M芯片安装Jdk-25+IntelliJ IDEA
  • 前端处理大模型SSE格式数据
  • 新能源电动汽车 VCU hil 与 BMS hil 硬件在环仿真探秘