【Python修仙笔记.4】数据结构法宝 - 存储你的仙器

故事情节

王麻子收集了很多法宝,老头说:"小子,法宝乱放像垃圾堆!用列表存储,像你的储物袋!"

王麻子:"列表?怎么用?"

老头:"哈哈,列表是可变袋子,元组是不可变,字典是带标签的,集合是去重!"

王麻子用数据结构整理法宝,瞬间变强:"这下我的背包整齐了!"

编程知识点讲解

老头:"列表: my_list = [1, '剑', 3.5] ; my_list.append(4) ; print(my_list[0])"

元组: my_tuple = (1, 2, 3) ; 不可改

字典: my_dict = {'name': '王麻子', 'power': 100} ; print(my_dict['name'])

集合: my_set = {1, 2, 3} ; my_set.add(4) ; 自动去重

老头:"这些是修仙的储物法宝,用好它们,数据管理如臂使指!"

实战代码示例

python 复制代码
# 列表
treasures = ['剑', '盾', '丹药']
treasures.append('法杖')
print(treasures)

# 元组
stats = (100, 50, True)
print(stats[0])

# 字典
player = {'name': '王麻子', 'power': 150, 'level': 5}
player['power'] += 50
print(player)

# 集合
unique_items = {'苹果', '香蕉', '苹果'}
unique_items.add('橙子')
print(unique_items)

趣味练习题

  1. 创建一个列表存储3个修仙物品,添加一个,打印列表。

  2. 用字典存储你的角色信息(name, age, power),更新power,打印。

  3. 用集合存储重复的丹药名,添加新丹药,看去重效果。

练习题答案与解释

  1. 修仙物品列表:

    python 复制代码
    items = ['飞剑', '护符', '灵丹']
    items.append('仙袍')
    print(items)  # 输出: ['飞剑', '护符', '灵丹', '仙袍']

    解释: 创建列表items存储三个物品,使用append添加新物品,然后打印列表。这演示了列表的可变性和基本操作。

  2. 角色信息字典:

    python 复制代码
    character = {'name': '王麻子', 'age': 18, 'power': 100}
    character['power'] += 50
    print(character)  # 输出: {'name': '王麻子', 'age': 18, 'power': 150}

    解释: 使用字典存储键值对,更新'power'键的值,然后打印字典。这展示了字典的访问和修改方式。

  3. 丹药集合:

    python 复制代码
    pills = {'金丹', '银丹', '金丹', '灵丹'}
    pills.add('仙丹')
    print(pills)  # 输出: {'金丹', '银丹', '灵丹', '仙丹'} (顺序可能不同)

    解释: 创建集合自动去除重复项,添加新元素,然后打印。这突出了集合的去重和无序特性。

本章知识点总结

  • 列表: 可变序列。

  • 元组: 不可变序列。

  • 字典: 键值对。

  • 集合: 无序去重。

  • 用对数据结构,代码更高效,像修仙更省力!

相关推荐
神奇的程序员4 小时前
从已损坏的备份中拯救数据
运维·后端·前端工程化
哥本哈士奇(aspnetx)5 小时前
Streamlit + LangChain 1.0 简单实现智能问答前后端
python·大模型
oden5 小时前
AI服务商切换太麻烦?一个AI Gateway搞定监控、缓存和故障转移(成本降40%)
后端·openai·api
我一定会有钱5 小时前
斐波纳契数列、end关键字
python
李慕婉学姐6 小时前
【开题答辩过程】以《基于Android的出租车运行监测系统设计与实现》为例,不知道这个选题怎么做的,不知道这个选题怎么开题答辩的可以进来看看
java·后端·vue
小鸡吃米…6 小时前
Python 列表
开发语言·python
m0_740043736 小时前
SpringBoot05-配置文件-热加载/日志框架slf4j/接口文档工具Swagger/Knife4j
java·spring boot·后端·log4j
星依网络7 小时前
yolov5实现游戏图像识别与后续辅助功能
python·开源·游戏程序·骨骼绑定
招风的黑耳7 小时前
我用SpringBoot撸了一个智慧水务监控平台
java·spring boot·后端
大佐不会说日语~7 小时前
Spring AI Alibaba 的 ChatClient 工具注册与 Function Calling 实践
人工智能·spring boot·python·spring·封装·spring ai