变量适合保存一个数据。当我们需要保存一组商品、一组成绩或一批任务时,就需要集合类型。
今天认识列表、元组和集合,其中最重要的是列表。
列表使用方括号,可以保存多个数据:
fruits = ["苹果", "香蕉", "橙子"]
scores = [88, 95, 76, 90]
列表中的位置叫索引,索引从 0 开始:
print(fruits[0]) # 苹果
print(fruits[1]) # 香蕉
print(fruits[-1]) # 橙子
-1 表示最后一个元素。
二、修改列表
增加元素:
fruits.append("葡萄")
修改元素:
fruits[0] = "草莓"
删除指定元素:
fruits.remove("香蕉")
按位置删除并取得该元素:
removed_fruit = fruits.pop(0)
三、列表长度与成员判断
print(len(fruits))
print("苹果" in fruits)
print("西瓜" not in fruits)
in 用于判断某个元素是否存在于集合中。
四、遍历列表
tasks = ["学习Python", "阅读", "运动"]
for task in tasks:
print(f"今日任务:{task}")
如果需要同时获得编号,可以先这样写:
for index in range(len(tasks)):
print(f"{index + 1}. {tasks[index]}")
五、常用统计函数
scores = [88, 95, 76, 90]
print(f"最高分:{max(scores)}")
print(f"最低分:{min(scores)}")
print(f"总分:{sum(scores)}")
print(f"平均分:{sum(scores) / len(scores):.2f}")
六、元组 tuple
元组使用圆括号,创建后通常不能修改:
location = (31.23, 121.47)
rgb = (255, 128, 0)
当一组数据不应该被修改时,元组可以表达这种意图。
只有一个元素的元组需要逗号:
single = (10,)
七、集合 set
集合使用花括号,特点是元素不重复、没有固定顺序:
skills = {"Python", "Excel", "Python", "SQL"}
print(skills)
重复的 Python 只会保留一个。
增加和删除元素:
skills.add("Git")
skills.remove("Excel")
集合常用于去重和成员判断。
三种类型怎么选
基础练习
今日项目:购物清单
shopping_list = []
while True:
item = input("请输入商品,输入q结束:").strip()
if item.lower() == "q":
break
shopping_list.append(item)
print("\n购物清单:")
for index in range(len(shopping_list)):
print(f"{index + 1}. {shopping_list[index]}")
print(f"共需要购买{len(shopping_list)}种商品。")
进阶挑战:输入重复商品时不再添加,并给出提示。
查漏测试
- 2.
append() 和 remove() 分别做什么? - 3.
pop() 与 remove() 有什么差别?
选择数据结构,本质上是在选择最适合数据特点的容器。