6个月Python学习计划 Day 4
🎯 今日目标
- 理解列表(list)和元组(tuple)的概念与区别
- 掌握基本操作:创建、访问、修改、切片、遍历
- 了解常用内置方法(如 .append()、.sort())
- 初步练习数据结构操作逻辑
🧾 一、列表(List)
列表是 可变 的、有序 的数据集合,用中括号 [] 表示。
✅ 创建列表
fruits = ["apple", "banana", "cherry"]
numbers = [1, 2, 3, 4, 5]
mixed = [1, "hello", True]
✅ 访问元素(索引从 0 开始)
print(fruits[0]) # 输出 apple
print(fruits[-1]) # 倒数第一个元素
✅ 修改元素
fruits[1] = "orange" # banana -> orange
✅ 增加元素
fruits.append("grape") # 末尾添加
fruits.insert(1, "kiwi") # 指定位置插入
✅ 删除元素
fruits.remove("apple") # 删除指定元素
del fruits[0] # 删除指定索引
fruits.pop() # 删除最后一个元素
✅ 列表切片
numbers = [0,1,2,3,4,5,6,7,8,9]
print(numbers[2:5]) # [2, 3, 4]
print(numbers[:5]) # [0, 1, 2, 3, 4]
print(numbers[::2]) # [0, 2, 4, 6, 8]
🧾 二、元组(Tuple)
元组是 不可变 的有序集合,用圆括号 () 表示。
✅ 创建元组
person = ("Tom", 25, 1.75)
✅ 访问元组
print(person[0]) # Tom
❌ 不可修改(以下会报错)
# person[1] = 30 ❌
✅ 元组解包(unpacking)
name, age, height = person
print(name, age, height)
🧪 今日练习任务
-
创建一个包含 5 个城市名称的列表,打印第一个和最后一个城市
-
将列表中的某个城市替换为另一个城市
-
新增一个城市并将列表按字母排序
-
写一个元组,表示某人的信息(姓名、年龄、身高、是否程序员)并用解包输出
-
使用切片输出列表的前 3 个元素和倒数 2 个元素
# 1.创建一个包含 5 个城市名称的列表,打印第一个和最后一个城市 cities = ["New York", "Los Angeles", "Chicago", "Houston", "Phoenix"] print("第一个城市:", cities[0]) print("最后一个城市:", cities[-1])# 2.将列表中的某个城市替换为另一个城市 cities[2] = "San Francisco" print("替换后的城市列表:", cities)# 3.新增一个城市并将列表按字母排序 cities.append("Seattle") cities.sort() print("排序后的城市列表:", cities)# 4.写一个元组,表示某人的信息(姓名、年龄、身高、是否程序员)并用解包输出 person_info = ("Alice", 30, 1.65, True) name, age, height, is_programmer = person_info print("姓名:", name) print("年龄:", age) print("身高:", height) print("是否程序员:", is_programmer)# 5.使用切片输出列表的前 3 个元素和倒数 2 个元素 print("前 3 个城市:", cities[:3]) print("倒数 2 个城市:", cities[-2:])
输出结果为:
第一个城市: New York 最后一个城市: Phoenix替换后的城市列表: ['New York', 'Los Angeles', 'San Francisco', 'Houston', 'Phoenix']排序后的城市列表: ['Houston', 'Los Angeles', 'New York', 'Phoenix', 'San Francisco', 'Seattle']姓名: Alice 年龄: 30 身高: 1.65 是否程序员: True前 3 个城市: ['Houston', 'Los Angeles', 'New York'] 倒数 2 个城市: ['San Francisco', 'Seattle']
✅ 今日小结
对比点 | 列表(List) | 元组(Tuple) |
---|---|---|
是否可变 | ✅ 可变 | ❌ 不可变 |
表示方式 | [] | () |
使用场景 | 动态数据集合 | 固定数据集合(如配置) |
性能/安全 | 较慢,灵活 | 较快,安全 |