第三阶段:核心语法 | 阅读约 8 分钟
你班上要统计10个同学的期末成绩。
用一个变量?要写10次赋值。
用20个?那要疯。
实际上,你只需要一行代码——这就是列表的威力。
列表:一个可以无限生长的收纳盒
列表的本质是一个有序的集合,用方括号[]包裹,元素之间用逗号分隔:
scores = [89,92,78,95,88]names = ["张三","李四","王五"]mixed = [1,"你好",True,3.14]# 可以混放不同类型核心操作:
nums = [10,20,30]nums[0]# 10(索引从0开始!)nums[-1]# 30(负数从末尾倒着数)nums[0:2]# [10, 20](切片,取前两个)nums.append(40)# [10, 20, 30, 40]nums.insert(1,15)# [10, 15, 20, 30, 40]nums.remove(20)# [10, 15, 30, 40]len(nums)# 4(列表长度)字典:带标签的抽屉柜列表用数字索引,但如果你要找"小明的成绩",用索引不行——你需要知道小明在第几个位置。字典解决了这个问题:用名字(键)来查找内容(值)。
student = {"name":"小明","age":20,"score":95}student["name"] # "小明"student["grade"] ="大二" # 添加新键值对"age" in student # True(检查键是否存在)元组:不可修改的"历史快照"元组和列表长得像(用圆括号),但一旦创建就不能修改。适合存放不变的数据:
position = (115.99,39.49)# GPS坐标集合:自动去重的"筛子"tags = {"Python","编程","Python"}print(tags)# {'编程', 'Python'}(自动去重)实战:管理学生成绩classroom = ["name":"张三","math":90,"english":85},"name":"李四","math":78,"english":92},# 打印每个学生的姓名和数学成绩for stu in classroom:print(f"{stu['name']}的数学成绩:{stu['math']}")这一小段代码就是列表里放字典——也是实际工作中最常见的"数据容器"模式。
互动:如果你要记录一周的开销,用列表还是字典?
为什么?
评论区写出你的数据结构设计。
热门跟贴