tinydict

简介: 【9月更文挑战第30天】

应用场景:小明的购物之旅

小明的妈妈给他一个购物清单,需要他去超市购买一些学习用品。购物清单是一个字典,记录了需要购买的商品和对应的数量。小明的购物清单如下:

tinydict = {
   '铅笔': 2, '橡皮': 1, '练习本': 3}

目标

  1. 理解字典的数据存储特点:学习字典如何存储键值对数据。
  2. 数据遍历统计:统计一共购买几类商品,所有商品数量一共有多少。
  3. 遍历函数的使用:学习如何使用函数来遍历字典。

步骤

1. 理解字典的数据存储特点

字典是一种存储键值对(key-value pairs)的数据结构。在这个购物清单中,商品名称是键(key),需要购买的数量是值(value)。

  • 键(key):独一无二的,不能重复。
  • 值(value):与键相关联的数据。

2. 统计一共购买几类商品

我们需要计算字典中有多少个键,即有多少类商品。

def count_items(shopping_dict):
    return len(shopping_dict)

total_items = count_items(tinydict)
print(f"小明一共需要购买 {total_items} 类商品。")

3. 统计所有商品数量一共有多少

我们需要计算字典中所有商品的数量之和。

def total_quantity(shopping_dict):
    return sum(shopping_dict.values())

total_quantity = total_quantity(tinydict)
print(f"所有商品数量一共有 {total_quantity} 个。")

4. 遍历字典

遍历字典可以让我们将每一项商品和数量都打印出来。

def print_shopping_list(shopping_dict):
    for item, quantity in shopping_dict.items():
        print(f"商品:{item},数量:{quantity}")

print_shopping_list(tinydict)

完整代码示例

# 定义购物清单
tinydict = {
   '铅笔': 2, '橡皮': 1, '练习本': 3}

# 定义函数,统计商品种类
def count_items(shopping_dict):
    return len(shopping_dict)

# 定义函数,统计商品总数量
def total_quantity(shopping_dict):
    return sum(shopping_dict.values())

# 定义函数,打印购物清单
def print_shopping_list(shopping_dict):
    for item, quantity in shopping_dict.items():
        print(f"商品:{item},数量:{quantity}")

# 统计商品种类
total_items = count_items(tinydict)
print(f"小明一共需要购买 {total_items} 类商品。")

# 统计商品总数量
total_quantity = total_quantity(tinydict)
print(f"所有商品数量一共有 {total_quantity} 个。")

# 打印购物清单
print_shopping_list(tinydict)

输出结果

小明一共需要购买 3 类商品。
所有商品数量一共有 6 个。
商品:铅笔,数量:2
商品:橡皮,数量:1
商品:练习本,数量:3

总结

通过这个购物场景,小朋友可以学习到字典的数据存储特点,如何使用函数来遍历字典,以及如何进行数据统计。这样的实践活动可以帮助他们更好地理解字典的概念和应用。

目录
相关文章
|
6月前
|
人工智能 BI 调度
帆软report10.0,从人工智能到人工+智能
帆软report10.0,从人工智能到人工+智能
294 0
|
2月前
|
机器学习/深度学习 算法 数据可视化
skimage
【9月更文挑战第30天】
35 1
|
2月前
|
数据可视化 数据挖掘 BI
三万字长文详解神级绘图框架 plotly
三万字长文详解神级绘图框架 plotly
179 12
|
2月前
|
网络协议 Linux Shell
CentOS7系统命令学习笔记(一)
CentOS7系统命令学习笔记(一)
|
2月前
|
存储 分布式计算 资源调度
两万字长文向你解密大数据组件 Hadoop
两万字长文向你解密大数据组件 Hadoop
123 11
|
2月前
|
人工智能 自然语言处理 运维
钉钉x昇腾:用AI一体机撬动企业数字资产智能化
大模型在过去两年迅速崛起,正加速应用于各行各业。尤其在办公领域,其主要模态——文字和图片,成为了数字化办公的基础内容,催生了公文写作、表格生成、文本翻译等多种应用场景,显著提升了工作效率。然而,AI引入办公场景也带来了数据安全与成本等问题。为此,钉钉与昇腾联合推出的“钉钉专属AI一体机解决方案”,通过本地化部署解决了数据安全、成本高昂及落地难等痛点,实现了从硬件到软件的深度协同优化,为企业提供了开箱即用的AI服务,推动了办公场景的智能化升级。
134 11
|
2月前
|
自然语言处理 索引 Python
详解模板渲染引擎 jinja2
详解模板渲染引擎 jinja2
110 10
|
2月前
|
消息中间件 canal 关系型数据库
Maxwell:binlog 解析器,轻松同步 MySQL 数据
Maxwell:binlog 解析器,轻松同步 MySQL 数据
299 11
|
21天前
|
Docker 容器
容器的日志
【10月更文挑战第31天】
98 68
|
流计算 SQL API
一文读懂Apache Flink发展史
本文整理自开源大数据专场中阿里巴巴高级技术专家杨克特(鲁尼)先生的精彩演讲,主要讲解了Apache Flink过去和现在的发展情况,同时分享了对Apache Flink未来发展方向的理解。
6205 0