列表
与学习任务清单
第六天,我开始学习 Python 列表。以前一个变量通常只保存一个值,现在我可以把多个科目或任务有顺序地放在一起。
创建列表并读取内容
列表使用方括号 [],各项之间用逗号隔开。列表的位置从 0 开始,因此第一项是 subjects[0]。
day6.py
subjects = ["语文", "数学", "英语", "Python"]
print(subjects)
print(subjects[0])
print(subjects[1])
print(subjects[3])
列表下标从 0 开始:位置 0 是第一项,位置 1 是第二项。下标描述的是数据在列表中的位置。
添加、修改和删除
append() 会在列表末尾追加新内容;给某个下标重新赋值可以修改已有内容。
day6.py
subjects.append("物理")
subjects[0] = "高中语文"
subjects.remove("英语")
subjects.pop(1)
print(subjects)
remove("英语") 根据内容删除,pop(1) 根据位置删除。完成这些操作后,列表中保留了“高中语文”“Python”和“物理”。
使用 for 遍历列表
“遍历”就是把列表里的内容一个接一个取出来。每一轮,变量 subject 都代表当前取到的那一项。
day6.py
for subject in subjects:
print(subject)
print("一共有", len(subjects), "门科目")
len(subjects) 会得到列表当前包含的项目数量。循环中的输出需要缩进,而统计总数的输出放在循环外,只执行一次。
学习任务清单
最后,我创建一个空列表,连续接收三项任务。每次输入完成后,程序通过 append() 把任务放进列表,再用另一个循环逐项展示。
study_plan.py
tasks = []
for number in range(3):
task = input("请输入今天的任务:")
tasks.append(task)
print("今天的学习任务:")
for task in tasks:
print("-", task)
print("一共有", len(tasks), "项任务")
程序正确收集了“背英语单词”“复习数学”和“学习 Python”,随后逐项输出,并统计出一共有 3 项任务。
为什么 range(3) 会执行三次
range(3) 依次产生 0、1、2。每个数字都会交给变量 number,所以循环一共执行三次。它不包含停止数字 3。
如果需要显示符合日常习惯的“第 1、2、3 项”,可以输出 number + 1。程序内部从 0 开始计数,并不妨碍展示时从 1 开始。
今天真正弄懂了什么
- 列表可以在一个变量中保存多个有顺序的数据
- 列表下标从
0开始 append()可以在末尾添加内容- 通过下标赋值可以修改指定位置的内容
remove()按内容删除,pop()按位置删除len()可以统计列表长度for可以逐项遍历列表- 空列表可以在程序运行时不断收集新的输入
今天第一次把多项数据真正组织起来。列表不只是新的语法,它让程序开始能够保存、整理和处理一组相关内容。