恒美微站 Logo 恒美微站
  • 首页
  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心
  • 联系我们

python【str、list、tuple、dict、set】 五大核心类型

  • 首页
  • 资讯中心
  • /
  • python【str、list、tuple、dict、set】 五大核心类型

相关资讯

AI Agent失控事件:生产环境安全与权限管理深度解析 2026/8/2 19:17:47
《冰雪传奇点卡版》转生系统深度解析与高效攻略 2026/8/2 19:17:47
ARM+DSP异构系统架构解析:从TMS320DA828/DA830看双核协同设计 2026/8/2 19:17:48

最新资讯

端侧Agent工程化:Function Calling与MCP落地实践
端侧Agent工程化实战:Function Calling与MCP协议设计
OpenAI开发者更新深度解析:Agents API、GPT-6.1 Sol与Codex CLI实战指南
协作式AI工程:从单点英雄到团队协同的落地实践
Agent开发工程化:从Demo到生产环境的架构与避坑指南
Orca:面向AI代理协同的轻量级并行运行时

今日推荐

SSD不认盘怎么修?金士顿SV300板级排查与短接ROM进工厂模式
Unity 3D RPG开发:C#状态机与物理更新时机实战指南
AIoT开发工程师岗位全景:从嵌入式Linux到边缘计算与端侧AI部署

本周热门

MR25H40CDF + PIC18F65K40:工业记录仪高可靠存储实战
基于STM32的数控恒压恒流电源设计:从硬件到PID调参全解析
LT9211 MIPI重定时器原理与双路扇出实战指南

本月精选

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证
2026 大模型集体涨价:用 Python 做企业 Token 成本测算与选型避坑(附配置)

python【str、list、tuple、dict、set】 五大核心类型

发布时间:2026/10/7 19:19:35
python【str、list、tuple、dict、set】 五大核心类型 Python 数据结构知识汇总Python 提供了丰富且强大的内置数据结构熟练掌握它们是编写高效 Python 代码的基础。本文将对str、list、tuple、dict、set五种核心数据结构进行系统性总结。一、字符串str字符串是 Python 中表示文本数据的不可变序列类型。1. 创建s1 hello s2 world s3 多行 字符串 s4 hello * 3 # hello hello hello. 特性不可变创建后不能修改任何修改操作都会返回新字符串可索引支持下标访问s[0]获取第一个字符可切片s[start:stop:step]可迭代支持for c in s遍历3. 常用方法方法说明s.upper() / lower()大小写转换s.strip()去除首尾空白s.split(sep)按分隔符拆分 → 列表 .join(list)列表拼接为字符串s.find(sub)查找子串返回索引-1 表示未找到s.replace(old, new)替换子串s.startswith(prefix)判断前缀len(s)获取长度4. 格式化name, age Alice, 25 # f-string推荐 print(fName: {name}, Age: {age}) # format() print(Name: {}, Age: {}.format(name, age)) # % 格式化旧式 print(Name: %s, Age: %d % (name, age))二、列表list列表是可变的有序序列可存储任意类型的元素。1. 创建lst1 [1, 2, 3] lst2 list(range(5)) # [0, 1, 2, 3, 4] lst3 [0] * 5 # [0, 0, 0, 0, 0] lst4 [x**2 for x in range(5)] # 列表推导式 [0,1,4,9,16]2. 常用操作操作说明lst.append(x)末尾追加lst.extend(iterable)扩展列表lst.insert(i, x)在指定位置插入lst.pop(i)移除并返回指定位置元素默认末尾lst.remove(x)移除第一个匹配元素lst.sort()原地排序lst.reverse()原地反转lst.index(x)查找元素索引lst.count(x)统计元素出现次数del lst[i]删除指定索引元素3. 切片Pythonlst [0, 1, 2, 3, 4, 5] lst[1:4] # [1, 2, 3] lst[:3] # [0, 1, 2] lst[::2] # [0, 2, 4] lst[::-1] # 反转 [5, 4, 3, 2, 1, 0]4. 列表推导式Python# 基本形式 squares [x**2 for x in range(10)] # 带条件 evens [x for x in range(10) if x % 2 0] # 嵌套循环 pairs [(x, y) for x in [1,2] for y in [3,4]]三、元组tuple元组是不可变的有序序列功能与列表类似但不能修改。1. 创建Pythont1 (1, 2, 3) t2 1, 2, 3 # 省略括号 t3 (1,) # 单元素元组逗号不能省略 t4 tuple([1, 2, 3]) # 从列表转换2. 特性不可变不能增删改元素可哈希元素均为不可变类型时可作为字典的键解包a, b, c (1, 2, 3)性能比列表更轻量访问速度略快3. 常用方法Pythont (1, 2, 3, 2, 4) t.count(2) # 2 t.index(2) # 1第一个匹配的索引 len(t) # 54. 元组与列表的选择场景选择需要修改数据列表数据不应更改元组作为字典键元组函数返回多个值元组四、字典dict字典是键值对key-value的无序集合Python 3.7 保持插入顺序。1. 创建Pythond1 {name: Alice, age: 25} d2 dict(nameBob, age30) d3 dict(zip([a,b], [1,2])) # {a: 1, b: 2} d4 {x: x**2 for x in range(5)} # 字典推导式2. 常用操作操作说明d[key]获取值key 不存在则报 KeyErrord.get(key, default)安全获取不存在返回默认值d[key] value设置值d.update(d2)合并字典d.pop(key)删除并返回值del d[key]删除键值对d.keys()获取所有键视图d.values()获取所有值视图d.items()获取所有键值对视图key in d判断键是否存在3. 遍历Pythond {a: 1, b: 2, c: 3} # 遍历键 for k in d: print(k) # 遍历键值对 for k, v in d.items(): print(k, v)4. 默认值Pythonfrom collections import defaultdict # 值为列表 dd defaultdict(list) dd[a].append(1) # 不需要先初始化 # 值为整数 dd defaultdict(int) dd[a] 1 # 自动初始化为 0五、集合set集合是无序的、不重复的元素集合。1. 创建Pythons1 {1, 2, 3} s2 set([1, 2, 2, 3]) # {1, 2, 3} 自动去重 s3 set() # 空集合不能用 {}那是空字典2. 常用操作操作说明s.add(x)添加元素s.remove(x)移除元素不存在报 KeyErrors.discard(x)移除元素不存在不报错s.pop()随机移除并返回一个元素s.clear()清空集合len(s)元素个数x in s成员判断O(1) 复杂度3. 集合运算Pythona {1, 2, 3, 4} b {3, 4, 5, 6} a | b # 并集 {1,2,3,4,5,6} a b # 交集 {3,4} a - b # 差集 {1,2} a ^ b # 对称差集 {1,2,5,6} a.issubset(b) # 是否为子集 a.issuperset(b) # 是否为超集 a.isdisjoint(b) # 是否无交集4. 集合推导式Pythons {x**2 for x in range(10) if x % 2 0} # {0, 4, 16, 36, 64}六、对比总结特性strlisttupledictset可变性❌✅❌✅✅有序性✅✅✅✅(3.7)❌可重复✅✅✅键唯一值可重复❌可哈希✅❌✅(元素可哈希时)❌❌存储方式字符序列任意对象任意对象键值对单一元素访问方式索引/切片索引/切片索引/切片键不支持索引查找复杂度O(n)O(n)O(n)O(1)O(1)七、实用技巧1. 列表去重保持顺序Pythonlst [3, 1, 2, 1, 3, 2] # Python 3.7 字典保持插入顺序 unique list(dict.fromkeys(lst)) # [3, 1, 2]2. 统计频率Pythonfrom collections import Counter data [1, 2, 2, 3, 3, 3, 4] count Counter(data) # Counter({3: 3, 2: 2, 1: 1, 4: 1}) count.most_common(2) # [(3, 3), (2, 2)]3. 合并字典Python 3.9Pythond1 {a: 1, b: 2} d2 {c: 3, d: 4} merged d1 | d2 # {a: 1, b: 2, c: 3, d: 4}4. 使用enumerate获取索引Pythonlst [a, b, c] for i, v in enumerate(lst, start1): print(i, v) # 1 a / 2 b / 3 c5. 使用zip并行遍历Pythonnames [Alice, Bob, Charlie] scores [85, 92, 78] for name, score in zip(names, scores): print(f{name}: {score})总结Python 的五大内置数据结构各有特色str不可变文本序列适合文本处理list全能可变序列日常开发使用频率最高tuple不可变轻量序列适合存储固定数据dict键值对映射快速查找的不二之选set无序唯一集合去重和集合运算的最佳工具

关于恒美微站

恒美微站专注于为个体商户、工作室提供极简自助建站服务,让每个人都能轻松拥有专业网站。

快速链接

  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心

服务项目

  • 可视化建站
  • 拖拽编辑
  • 主题定制
  • SEO 优化
  • 网站托管

联系方式

  • 📍 地址:北京市朝阳区建国路 88 号
  • 📞 电话:400-888-8888
  • ✉️ 邮箱:info@hmyw.cn
  • 🕐 时间:周一至周日 9:00-18:00

© 2024 恒美微站 hmyw.cn 版权所有 | 京 ICP 备 12345678 号