尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
Python笔记(二)--列表
这一节了解一下Python中的列表列表是一种有序、可变、可重复的数据容器用来把多个数据放在一个变量里管理。可以把它理解成一排“编号格子”每个格子存一个数据编号从0开始。简单总结如下:API:1 列表下标访问lst[index]:通过整数下标获取列表单个元素下标从 0 开始支持嵌套列表多重下标。item lst[下标] spam [cat,bat,rat]; spam[0] → cat; spam[0][1] 读取嵌套列表内部元素。2 负数下标 lst[-n]:负下标从列表末尾倒数取元素,-1代表最后一个元素-2倒数第二个。item lst[-负数字] spam [cat,bat,rat]; spam[-1] → rat3 列表切片 lst[start:end]:截取子列表包含 start 下标不包含 end 下标start 省略从头end 省略到末尾lst[:]复制整个列表。sub_list lst[起始下标:结束下标] spam[1:3] → [bat,rat]; spam[:2] → [cat,bat]4 len(lst)内置函数:返回列表内元素总个数同样适用于元组、字符串。num len(列表) len([cat,dog]) → 25 下标修改元素 lst[index] value:利用下标直接修改列表指定位置的值列表是可变类型原地修改。lst[下标] 新值 spam[1] aardvark 将下标 1 位置替换为新内容。6 列表连接运算符 :把两个列表拼接返回全新列表原列表不变。new_list listA listB [1,2] [A,B] → [1,2,A,B]7 列表复制运算符 *:列表乘整数将列表重复多遍生成新列表。new_list lst * 整数 [X,Y] *3 → [X,Y,X,Y,X,Y]8 del lst[index] 删除语句:删除列表指定下标元素后面元素自动向前移位也可以删除变量。原地修改列表。del lst[下标] spam [cat,bat,rat]; del spam[2]9 值 in lst成员运算符:判断某个值是否存在列表内返回布尔 True/False。bool_res 元素 in 列表 cat in [cat,dog] → True10 值 not in lst成员运算符:判断某个值不在列表返回布尔。bool_res 元素 not in 列表 bird not in [cat,dog] → True11 多重序列解包赋值 var1,var2 lst:一行代码将列表元素依次赋值给多个变量变量数量必须等于列表长度。变量1,变量2,变量3 列表 cat [fat,black,loud]; size,color,disp cat12 增强赋值 lst other_list:原地拼接列表等价于 lst lst other_list。lst 另一个列表 a [1,2]; a [3,4] → [1,2,3,4]13 增强赋值 lst * n:原地重复列表 n 次修改原列表。lst * 整数 b [Zophie]; b *3 → [Zophie,Zophie,Zophie]14 lst.index(value)列表方法:查找值在列表中第一次出现的下标找不到抛出ValueError。idx lst.index(目标值) spam [a,b,c]; spam.index(b) →115 lst.append(value)列表方法:在列表末尾追加单个元素原地修改返回 None。lst.append(待添加元素) spam [cat,dog]; spam.append(moose)16 lst.insert(index, value)列表方法:在指定下标位置插入新元素原下标及之后元素向后挪位原地修改。lst.insert(插入位置下标,插入的值) spam.insert(1,chicken)17 lst.remove(value)列表方法:删除列表中第一个匹配该值的元素值不存在抛 ValueError原地修改。lst.remove(要删除的元素值) spam [cat,bat]; spam.remove(bat)18 lst.sort()列表排序方法:原地对列表进行升序排序ASCII 字符顺序返回 None。lst.sort() num [3,1,-2]; num.sort() → [-2,1,3]19 lst.sort(reverseTrue) 逆序排序:sort 的 reverse 参数为 True实现降序逆序原地排序。lst.sort(reverseTrue) spam.sort(reverseTrue)20 lst.sort(keystr.lower)忽略大小写排序:key 参数指定转换函数排序时按小写比较不改变原始列表内容。lst.sort(keystr.lower) [a,Z,A,z].sort(keystr.lower)21 tuple(序列)类型转换函数:接收列表/字符串返回对应的元组不可变序列。t tuple(可迭代对象) tuple([1,2,3]) → (1,2,3)22 list(序列)类型转换函数:接收元组/字符串返回对应的可变列表。lst list(可迭代对象) list((cat,dog)) → [cat,dog]; list(hello) → [h,e,l,l,o]23 元组下标访问 t[index]:元组和列表一样支持下标读取元组不可变不能赋值修改元素item t[下标] eggs(hello,42); eggs[0] → hello24 元组切片 t[start:end]:元组支持切片操作返回新元组。sub_tuple t[start:end] eggs[1:3] → (42,0.5)25 copy.copy(obj) 浅拷贝copy 模块):复制列表创建独立新列表仅复制顶层元素嵌套列表内部依旧共享引用。import copy; new_lst copy.copy(原列表) cheese copy.copy(spam)26 copy.deepcopy(obj)深拷贝copy 模块:完整拷贝包括内部嵌套的子列表全部生成独立副本互不干扰。import copy; new_lst copy.deepcopy(原列表) new_grid copy.deepcopy(grid)27 range(len(lst))配合 for 循环遍历下标:拿到全部下标数字同时访问下标和列表元素。for i in range(len(lst)): 使用lst[i] supplies [pen,book]; for i in range(len(supplies))28 for item in lst 直接遍历元素:for 循环直接迭代列表每个元素不需要下标。for item in lst: 操作item for name in catNames: print(name)29 空列表 []:代表空列表对象用于初始化存放后续添加元素。lst [] catNames []栗子:pet_names [] while True: name input(请输入宠物名字直接回车结束录入) if name : break pet_names.append(name) print(\n 当前所有宠物 ) for idx in range(len(pet_names)): print(f下标{idx}: {pet_names[idx]}) query input(\n输入名字查询是否是我的宠物) if query in pet_names: print(f{query} 是我的宠物) else: print(f{query} 不是我的宠物) del_name input(\n输入想要删除的宠物名字) if del_name in pet_names: pet_names.remove(del_name) print(f已经删除 {del_name}) print(更新后列表, pet_names) else: print(列表中没有该宠物)import copy score_list [Bob, alice, Carol, david, 90, 77] ref_list score_list copy_list copy.copy(score_list) ref_list[0] Tom print(原始列表被引用修改, score_list) print(浅拷贝副本不受影响, copy_list) str_part [Bob, alice, Carol, david] str_part.sort(keystr.lower) print(忽略大小写排序结果, str_part) score_tuple tuple(str_part) print(转为元组, score_tuple) back_list list(score_tuple) a,b,c,d back_list print(f解包a{a},b{b},c{c},d{d}) nested [[1,2], [3,4]] deep_copy_nest copy.deepcopy(nested) deep_copy_nest[0][0] 999 print(原嵌套列表, nested) print(深拷贝修改副本, deep_copy_nest)
RELATED

相关推荐

HTTP/2帧层解析:用hyperframe库轻松拆解二进制帧与多路复用

HTTP/2帧层解析:用hyperframe库轻松拆解二进制帧与多路复用

排查公司网关到CDN的那条慢连接时,我盯着Wireshark里成千上万个九字节的HTTP/2二进制帧发呆。平时没人愿意直接面对帧层,但一旦问题出在线路并发、帧交错或者流控窗口上,你就必须下到这个层次。Python 社区为此准备了一个叫 hyperframe 的库&…

📅 2026/10/7 8:42:21
SpringBoot+Vue校园图书借阅系统:动态路由与定时任务实战

SpringBoot+Vue校园图书借阅系统:动态路由与定时任务实战

简介:本资源为基于SpringBoot与Vue的校园图书借阅与管理系统完整项目源码,面向计算机专业学生、Java全栈开发者及需要课程设计或毕业设计参考的技术人员,帮助解决图书借阅流程数字化、权限管理与数据统计等实际问题。压缩包共1087个文件&…

📅 2026/10/7 8:42:21
Magic Context Monorepo贡献指南:目录地图、Golden测试与提交第一个PR的完整步骤

Magic Context Monorepo贡献指南:目录地图、Golden测试与提交第一个PR的完整步骤

Magic Context Monorepo贡献指南:目录地图、Golden测试与提交第一个PR的完整步骤 【免费下载链接】magic-context Unbounded context. Memory that manages itself. One session, for life. The hippocampus for coding agents, part of CortexKit. 项目地址: htt…

📅 2026/10/7 8:42:21
MORE NEWS

更多资讯

📰

rsuite 虚拟滚动表格(Table virtualized)完整实战指南:海量数据渲染与无限滚动加载

前端UI组件 【免费下载链接】rsuite &#x1f9f1; A suite of React components . 项目地址&#xff1a; https://gitcode.com/gh_mirrors/rs/rsuite 点击查看 免费下载 导读 本文聚焦 rsuite 组件库中 <Table> 的虚拟化&#xff08;virtualized&#xff09;能力&…

📰

Beaker 用户态应用(Userland)架构解析:beaker:// 协议下的内置前端应用体系

前端 【免费下载链接】beaker An experimental peer-to-peer Web browser 项目地址&#xff1a; https://gitcode.com/gh_mirrors/be/beaker 点击查看 免费下载 本文以 Beaker 浏览器&#xff08;app/userland/README.md&#xff09;对 Userland 目录的定位说明为主体&#xf…

📰

MIPS32单周期CPU设计全流程:从数据通路到Verilog仿真

干了这么多年数字逻辑&#xff0c;带过不少学生做课程设计&#xff0c;也帮人排查过各种奇奇怪怪的仿真报错&#xff0c;单周期CPU设计这个题目&#xff0c;几乎每隔一段时间就会遇到一次。它确实是计算机组成原理课里最有分量的一个实验&#xff0c;很多人刚开始以为只是写几个…

📰

Agent-Reach:智能体触达目标系统的轻量中间层设计

1. 项目概述与核心定位1.1 “Agent-Reach”到底是什么第一次听到“Agent-Reach”这个名字&#xff0c;多数人第一反应是“这是不是某个智能体框架的代号”。我最初也这么以为&#xff0c;直到真正接触了这套东西&#xff0c;才意识到“Agent-Reach”不是一个花哨的AI Agent编排…

📰

笔记本硬件测试能力验证体系:从用户场景到电路级根因

1. 这不是背题清单&#xff0c;而是一套可落地的笔记本硬件测试能力验证体系“关于笔记本测试的面试准备”——看到这个标题&#xff0c;很多人第一反应是翻面经、背八股、记参数。但我在大厂做终端质量验证岗七年&#xff0c;带过23个校招新人&#xff0c;见过太多人把“笔记本…

📰

SpringBoot职称评审系统毕业设计实战包

简介&#xff1a;本资源是一套完整可用的职称评审管理系统毕业设计项目&#xff0c;面向计算机专业本科生及Java后端初学者&#xff0c;解决毕业设计选题难、系统开发无参考、文档资料不齐全等实际问题。压缩包含857个文件&#xff0c;总大小24.83MB&#xff0c;涵盖129个Java后…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬