Python入门第二篇:列表、元组与字符串的进阶操作
上一篇介绍了Python的环境搭建和基础语法。本篇将深入讲解Python中的核心数据结构——列表、元组、字典和集合这些是组织和管理数据的核心工具掌握它们是从“写出代码”到“写出有用代码”的关键一步。一、列表有序可变的序列列表是Python中最常用的数据结构用于存储有序的、可变的元素集合。列表用方括号[]表示元素之间用逗号分隔。pythonfruits [apple, banana, cherry] numbers [1, 2, 3, 4, 5] mixed [1, hello, 3.14, True] # 列表可以混合不同类型 empty [] # 空列表访问元素通过索引访问索引从0开始。负索引从末尾开始计数-1是最后一个元素。pythonprint(fruits[0]) # apple print(fruits[-1]) # cherry print(fruits[1:3]) # [banana, cherry] 切片操作切片是列表操作的重要特性list[start:end:step]包含start不包含end。pythonnumbers [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] print(numbers[2:6]) # [2, 3, 4, 5] print(numbers[:5]) # [0, 1, 2, 3, 4] print(numbers[5:]) # [5, 6, 7, 8, 9] print(numbers[::2]) # [0, 2, 4, 6, 8] step为2修改列表列表是可变的可以修改任意位置的元素。pythonfruits[1] blueberry # 修改元素 fruits.append(orange) # 在末尾添加 fruits.insert(0, grape) # 在指定位置插入 fruits.remove(apple) # 删除第一个匹配的元素 popped fruits.pop() # 弹出并返回最后一个元素 del fruits[0] # 删除指定位置的元素列表推导式是Python独特的简洁语法用于从现有列表创建新列表pythonsquares [x**2 for x in range(10)] # [0, 1, 4, 9, 16, 25, 36, 49, 64, 81] evens [x for x in range(20) if x % 2 0] # 带条件筛选二、元组不可变的序列元组与列表类似但一旦创建就不能修改。元组用圆括号()表示。pythoncoords (10, 20) person (Alice, 25, Engineer) single (42,) # 单个元素的元组需要加逗号 empty () # 空元组元组的主要用途作为字典的键列表不可以保护数据不被意外修改函数返回多个值时使用pythonx, y coords # 元组解包 print(x, y) # 10 20 # 解包也可以用于列表 a, b, c [1, 2, 3]三、字典键值对的映射字典是Python中另一种重要的数据结构用于存储键值对通过键快速访问值。字典用花括号{}表示。pythonperson { name: Bob, age: 30, city: New York } print(person[name]) # Bob print(person.get(age, 0)) # 30get方法可以指定默认值字典操作pythonperson[job] Engineer # 添加新键值对 person[age] 31 # 修改已有键的值 del person[city] # 删除键值对 # 遍历字典 for key in person: print(key, person[key]) for key, value in person.items(): print(f{key}: {value}) # 检查键是否存在 if name in person: print(Name exists)四、集合无序不重复的元素集合用于存储不重复的元素适合去重和集合运算并集、交集、差集。集合用花括号{}表示。pythoncolors {red, green, blue} mixed {1, 2, hello} # 混合类型可以 empty set() # 空集合不能使用{}因为{}被字典占用 # 添加和移除 colors.add(yellow) colors.remove(red) # 如果元素不存在会报错 colors.discard(purple) # 如果元素不存在不会报错 # 集合运算 set1 {1, 2, 3, 4} set2 {3, 4, 5, 6} print(set1 | set2) # 并集 {1,2,3,4,5,6} print(set1 set2) # 交集 {3,4} print(set1 - set2) # 差集 {1,2} print(set1 ^ set2) # 对称差集 {1,2,5,6}五、字符串的进阶操作字符串是不可变的字符序列提供了丰富的操作方法。字符串方法pythontext Hello, World! print(text.strip()) # Hello, World! 去除首尾空白 print(text.lower()) # hello, world! print(text.upper()) # HELLO, WORLD! print(text.replace(World, Python)) # 替换 print(text.split(,)) # [ Hello, World! ] # 判断方法 print(text.isdigit()) # 是否全是数字 print(text.isalpha()) # 是否全是字母 print(text.startswith(Hello)) # True print(text.endswith(!)) # True格式化字符串有多种方式pythonname Alice age 25 # f-stringPython 3.6推荐 print(fName: {name}, Age: {age}) # format方法 print(Name: {}, Age: {}.format(name, age)) # 旧式%格式化 print(Name: %s, Age: %d % (name, age))六、遍历数据结构的多种方式python# 遍历列表 fruits [apple, banana, cherry] for fruit in fruits: print(fruit) # 带索引遍历 for i, fruit in enumerate(fruits): print(f{i}: {fruit}) # 同时遍历多个列表 names [Alice, Bob, Charlie] ages [25, 30, 35] for name, age in zip(names, ages): print(f{name} is {age} years old)七、常见错误与最佳实践IndexError: list index out of range索引越界检查列表长度KeyError访问了字典中不存在的键使用get()方法可以避免列表在循环中修改时可能导致意外行为应使用切片或新列表使用in操作符检查元素是否存在避免直接访问可能不存在的索引或键使用copy()方法复制列表防止引用传递的混淆八、小结本篇介绍了Python中四种核心数据结构列表、元组、字典和集合并扩展了字符串操作的常用方法。列表适合存储有序可变序列元组适合存储不可变数据字典适合通过键快速查找值集合适合去重和集合运算。这些数据结构是编写Python程序的基础工具建议在实际编码中反复练习。下一篇将介绍文件操作和异常处理机制。

相关新闻

Reloaded-II:游戏模组管理的革命性解决方案,告别混乱迎接统一

Reloaded-II:游戏模组管理的革命性解决方案,告别混乱迎接统一

Reloaded-II:游戏模组管理的革命性解决方案,告别混乱迎接统一 【免费下载链接】Reloaded-II Universal .NET Core Powered Modding Framework for any Native Game X86, X64. 项目地址: https://gitcode.com/gh_mirrors/re/Reloaded-II 你是否曾为…

2026/8/1 13:02:36 阅读更多 →
告别命令行:Hyper-V设备直通的图形化革命

告别命令行:Hyper-V设备直通的图形化革命

告别命令行:Hyper-V设备直通的图形化革命 【免费下载链接】DDA 实现Hyper-V离散设备分配功能的图形界面工具。A GUI Tool For Hyper-Vs Discrete Device Assignment(DDA). 项目地址: https://gitcode.com/gh_mirrors/dd/DDA 还在为复杂的PowerShell命令而头…

2026/8/1 13:02:36 阅读更多 →
3步搞定智能文档编排:OneMore大纲编号的完整解决方案

3步搞定智能文档编排:OneMore大纲编号的完整解决方案

3步搞定智能文档编排:OneMore大纲编号的完整解决方案 【免费下载链接】OneMore A OneNote add-in with simple, yet powerful and useful features 项目地址: https://gitcode.com/gh_mirrors/on/OneMore 还在为OneNote文档的层级结构混乱而烦恼?…

2026/8/1 13:02:36 阅读更多 →

最新新闻

AI代码崩溃率下降92%的秘密:从零构建企业级异常规范体系

AI代码崩溃率下降92%的秘密:从零构建企业级异常规范体系

更多请点击: https://codechina.net 第一章:AI代码崩溃率下降92%的秘密:从零构建企业级异常规范体系 在大型AI工程实践中,异常处理长期处于“救火式”状态:日志散落、错误码不统一、重试逻辑随意嵌入、SRE无法快速定位…

2026/8/1 13:57:54 阅读更多 →
3步轻松搞定黑苹果SSDT补丁:SSDTTime实用配置手册

3步轻松搞定黑苹果SSDT补丁:SSDTTime实用配置手册

3步轻松搞定黑苹果SSDT补丁:SSDTTime实用配置手册 【免费下载链接】SSDTTime SSDT/DSDT hotpatch attempts. 项目地址: https://gitcode.com/gh_mirrors/ss/SSDTTime 对于想要体验黑苹果的新手来说,SSDTTime是一款高效实用的ACPI补丁生成工具&…

2026/8/1 13:57:54 阅读更多 →
大型路演活动音视频直播技术方案全解析

大型路演活动音视频直播技术方案全解析

最近在成都凯德新南和BZ路演现场,KISS OF LIFE组合带来的《Midas Touch》表演吸引了众多Kpop爱好者的关注。作为技术博主,虽然不常涉及娱乐内容,但这次演出背后涉及的音视频技术、现场直播方案以及活动策划中的技术支撑确实值得探讨。本文将从…

2026/8/1 13:57:54 阅读更多 →
UE5游戏音频开发实战:Wwise动态混音、空间化与Audio Volume配置详解

UE5游戏音频开发实战:Wwise动态混音、空间化与Audio Volume配置详解

1. 项目概述:从“背景音乐”到“声音世界”的进化在游戏开发,尤其是UE5项目里,声音早就不是简单的“背景音乐”或“枪声”了。它已经演变成一个需要精心设计和实时响应的“声音世界”。过去,我们可能只是把几个音频文件拖进引擎&a…

2026/8/1 13:57:54 阅读更多 →
音乐格式转换工具:如何在浏览器中解决加密音乐播放问题

音乐格式转换工具:如何在浏览器中解决加密音乐播放问题

音乐格式转换工具:如何在浏览器中解决加密音乐播放问题 【免费下载链接】unlock-music 在浏览器中解锁加密的音乐文件。原仓库: 1. https://github.com/unlock-music/unlock-music ;2. https://git.unlock-music.dev/um/web 项目地址: http…

2026/8/1 13:57:54 阅读更多 →
7英寸电容触摸屏模块(7EP-CAPLCD)硬件设计与Linux驱动开发全解析

7英寸电容触摸屏模块(7EP-CAPLCD)硬件设计与Linux驱动开发全解析

1. 项目概述:从一串神秘代码到电容式触摸屏的深度解析最近在几个硬件开发社区和供应链群里,频繁看到“7EP-CAPLCD”这个代号在流传。乍一看,它像是一串随机的产品料号,但对于我们这些常年泡在显示和交互模块一线的工程师来说&…

2026/8/1 13:56:54 阅读更多 →

日新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/1 0:00:48 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/1 0:00:48 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/1 0:00:48 阅读更多 →

周新闻

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 数据集6000张 完整源码已标注数据集训练好的模型环境配置教程程序运行说明文档,可以直接使用!系统支持图片、视频、摄像头等多种方式检测裂缝,功能强大实用。 1数据集6000张 8各类别

2026/8/1 13:02:46 阅读更多 →
深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

pubg数据集 精选原图1.42万数据 1.49万标签 无任何重复、算法增强或冗余图像! pubg绝地求生目标检测数据集 1分类:e_body,14905个标签,txt格式 共计14244张图,99%为640*640尺寸图像 适合yolo目标检测、AI训练关键词&am…

2026/8/1 5:19:34 阅读更多 →
Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex检测数据集数据集详情检测类别: allies enemy tag图片总量:7247张训练集:5139张验证集:1425张测试集:683张标注状态:全部已标注,即拿即用数据格式:支持YOLO格式及其他格式&#…

2026/8/1 10:33:33 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/1 0:00:48 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/1 0:00:48 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/1 0:00:48 阅读更多 →