Python字典实战题目练习,巩固知识、检查技术

news2024/9/21 0:45:01

本文主要是作为Python中列表的一些题目,方便学习完Python的列表之后进行一些知识检验,感兴趣的小伙伴可以试一试,含选择题、判断题、实战题,答案在第四章

在做题之前可以先学习或者温习一下Python的列表,推荐阅读下面这篇文章:

Python全网最全基础课程笔记(八)——字典,跟着思维导图和图文来学习,爆肝2w字,无数代码案例!

通过这些题目,学习者可以检验自己对Python字典基础知识的掌握程度。

编程不仅是技术的堆砌,更是灵魂的创造,每一次代码的跳动,都是向世界宣告你的不凡!

  • 博客主页:长风清留扬-CSDN博客
  • 系列专栏:Python基础专栏
  • 每天更新大数据相关方面的技术,分享自己的实战工作经验和学习总结,尽量帮助大家解决更多问题和学习更多新知识,欢迎评论区分享自己的看法
  • 感谢大家点赞👍收藏⭐评论

一、选择题

题目1:Python中创建一个空字典的方法是?

A. dict = {}

B. dict = []

C. dict = ()

D. dict = ""

题目2:在Python字典中,根据键获取值应该使用哪个方法?

A. get()

B. set()

C. keys()

D. values()

题目3:Python字典中的键值对之间使用哪个符号分隔?

A. 逗号

B. 冒号

C. 分号

D. 点号

题目4:以下哪个选项不是Python字典的特点?

A. 无序性

B. 键的唯一性

C. 可变性

D. 有序性

题目5:在Python中,如何删除字典中的一个键值对?

A. 使用del语句

B. 使用pop()方法

C. 使用remove()方法

D. 使用clear()方法

题目6:在Python中,字典(Dictionary)是一种什么类型的数据结构?

A. 列表(List)
B. 集合(Set)
C. 映射(Mapping)
D. 元组(Tuple)

题目7:如何获取字典中某个键对应的值?

A. dict.key
B. dict(key)
C. dict[key]
D. dict.get(key)

题目8:字典的键可以是哪些类型?

A. 只能是字符串
B. 只能是整数
C. 只能是不可变类型
D. 只能是列表

题目9:以下哪个表达式是正确的,用于检查键是否存在于字典中?

A. if key in dict:
B. if dict.has_key(key):
C. if dict.contains(key):
D. if dict.get(key) != None:

题目10:如何遍历字典中的所有键值对?

A. for key in dict:
B. for key, value in dict.items():
C. for value in dict.values():
D. 以上都可以,但方式不同

二、判断题

题目1:Python字典中的键必须是不可变类型。

题目2:可以通过下标访问字典中的元素。

题目3:字典在Python 3.7+版本中保持插入顺序。

题目4:del语句可以用来删除字典中的键值对。

题目5:字典的update()方法用于添加新的键值对。

题目6:字典的popitem()方法随机删除并返回一个键值对。

题目7:字典推导式可以用来创建字典。

题目8:字典的keys()、values()和items()方法都返回可迭代对象。

题目9:在Python中,字典的键(key)必须是唯一的,但值(value)可以重复。

题目10:字典的键(key)只能是整数类型。

题目11:字典的值(value)可以是任何数据类型,包括列表、字典等。

题目12:字典可以通过len()函数来获取其包含的键值对数量。

三、实战题

题目1:创建并打印一个字典

题目描述
创建一个包含学生姓名和年龄的字典, 然后打印出这个字典。

数据要求分别为:

姓名:Alice 年龄 23

姓名:Bob 年龄 20

姓名:Charlie 年龄 22

字典的变量名设置为 student

解题思路

  • 使用大括号{}dict()函数创建一个字典。
  • 使用键值对的形式添加元素,其中键是学生的姓名(字符串),值是年龄(整数)。
  • 使用print()函数打印字典。

题目2:向字典中添加新元素

题目描述
在上面的students字典中,添加一个新学生的姓名和年龄。

解题思路

  • 直接使用字典的键来添加或更新值。

题目3:从字典中访问元素

题目描述
打印出students字典中'Bob'的年龄。

解题思路

  • 使用字典的键来访问对应的值。

题目4:检查字典中是否存在某个键

题目描述
检查students字典中是否存在键'Eve'。

解题思路

  • 使用in关键字来检查字典中是否存在某个键。

题目5:使用get()方法访问字典元素

题目描述
使用get()方法尝试访问students字典中'Eve'的年龄,如果不存在,则返回'Age not found'

解题思路

  • get()方法用于访问字典中的元素,如果键不存在,则返回指定的默认值(如果未提供默认值,则返回None)。

四、答案

选择题

题目1:

这道题目考察的是Python字典的创建方法。正确答案是A,因为{}是创建空字典的语法

题目2:

这道题目考察的是字典中根据键获取值的方法。正确答案是A,因为get()方法用于根据指定的键获取对应的值

题目3:

这道题目考察的是字典中键值对的表示方法。正确答案是B,因为在字典中,键和值之间使用冒号分隔

题目4:

这道题目考察的是对字典特点的理解。正确答案是D,因为Python字典是无序的,即字典中元素的排列顺序并不固定

题目5:

这道题目考察的是删除字典中键值对的方法。正确答案是A和B,因为del语句和pop()方法都可以用于删除字典中的指定键值对,而remove()方法通常用于列表,clear()方法用于清空整个字典

题目6:

答案:C
字典是一种映射类型,它存储了键值对(key-value pairs)的集合。每个键都映射到一个值上,键必须是唯一的。

题目7:

答案:C 和 D
虽然dict[key]是最直接的方式,但如果键不存在会抛出KeyError。而dict.get(key)则更加安全,如果键不存在会返回None(或者你可以指定一个默认值作为第二个参数)。

题目8:

答案:C
字典的键必须是不可变类型,如整数、浮点数、字符串或元组等。列表、集合等可变类型不能作为字典的键。

题目9:

答案:A
解释:if key in dict:是检查键是否存在于字典中的正确方式。dict.has_key(key)在Python 3中已被移除,dict.contains(key)不是字典的方法,而if dict.get(key) != None:虽然可以工作,但不如直接使用in关键字清晰且高效。

题目10:

答案:B
解释:虽然A选项可以遍历字典的键,但B选项for key, value in dict.items():是遍历键值对的正确方式。C选项只遍历值。

判断题

题目1:

正确。字典的键必须是不可变类型,如整数、浮点数、字符串、元组等,这是因为字典在内部通过哈希表实现,需要键的哈希值在字典生命周期内保持不变。

题目2:

错误。与列表不同,字典不支持通过下标(索引)访问元素,而是通过键来访问对应的值。

题目3:

正确。自Python 3.7起,字典开始保持插入顺序,这意味着迭代字典时,元素的顺序与它们被插入到字典中的顺序相同。

题目4:

正确。使用del语句可以删除字典中的指定键值对,如del my_dict[key]。

题目5:

部分正确。update()方法确实可以添加新的键值对到字典中,但如果键已存在,该方法会更新该键对应的值。

题目6:

错误。popitem()方法删除并返回字典中的最后一个键值对(在Python 3.7+中,即最近插入的键值对),而不是随机删除。

题目7:

正确。字典推导式是一种简洁的语法结构,用于根据现有数据快速生成新的字典。

题目8:

正确。这三个方法分别返回字典的键、值和键值对的可迭代视图对象。

题目9:

正确。字典(dictionary)在Python中是一种可变容器模型,且可存储任意类型对象。字典的每个元素都是一个键值对,键必须是唯一的,而值则不必唯一。这意味着字典中可以有两个或更多个键值对拥有相同的值,但每个键都是唯一的。

题目10:

错误字典的键可以是任何不可变类型,包括但不限于整数、浮点数、字符串或元组(只要元组中的元素也都是不可变的)。例如,字符串和元组都可以作为字典的键,而列表由于是可变的,所以不能作为字典的键。

题目11:

正确如前所述,字典的值可以是任意Python对象,包括列表、字典等复杂数据结构。这使得字典非常灵活,能够用来存储和组织复杂的数据。

题目12:

正确len()函数用于获取容器中元素的数量,对于字典来说,它返回的是字典中键值对的数量。这是了解字典大小的一个快速方法。

实战题

题目1:

# 创建一个包含学生姓名和年龄的字典  
students = {  
    'Alice': 23,  
    'Bob': 20,  
    'Charlie': 22  
}  
  
# 打印字典  
print(students)  # 输出: {'Alice': 23, 'Bob': 20, 'Charlie': 22}

题目2:

# 在students字典中添加一个新学生  
students['David'] = 21  # 使用键来添加或更新值  
  
# 打印更新后的字典  
print(students)  # 输出: {'Alice': 23, 'Bob': 20, 'Charlie': 22, 'David': 21}

题目3:

# 访问并打印'Bob'的年龄  
bob_age = students['Bob']  # 使用键来访问值  
print(bob_age)  # 输出: 20

题目4:

# 检查'Eve'是否存在于students字典中  
if 'Eve' in students:  
    print("Eve is in the dictionary.")  
else:  
    print("Eve is not in the dictionary.")  # 输出: Eve is not in the dictionary.

题目5:

# 使用get()方法尝试访问'Eve'的年龄  
eve_age = students.get('Eve', 'Age not found')  # 如果'Eve'不存在,则返回'Age not found'  
print(eve_age)  # 输出: Age not found

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2127839.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

沃尔玛测评防关联技术:自养号攻略全面解析

防关联技术 1.使用国外的服务器和防火墙:为了确保测评活动的隐蔽性和安全性,卖家应选择使用国外的服务器,并通过远程搭建一个安全终端防火墙。这样可以阻断硬件参数的关联问题,降低被沃尔玛平台检测到的风险。 2.创建住宅专线IP…

《食品安全导刊》是什么级别的期刊?是正规期刊吗?能评职称吗?

问题解答 问:《食品安全导刊》是不是核心期刊? 答:不是,是知网收录的正规学术期刊。 问:《食品安全导刊》级别? 答:国家级。主管单位: 中国商业联合会 主办单…

解析DNS查询报文,探索DNS工作原理

目录 1. 用 tcpdump工具监听抓包 2. 用 host 工具获取域名对应的IP地址 3. 分析DNS以太网查询数据帧 3.1 linux下查询DNS服务器IP地址 3.2 DNS以太网查询数据帧 (1)数据链路层 (2)网络层 (3)传输层…

NC 和为K的连续子数组

系列文章目录 文章目录 系列文章目录前言 前言 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站,这篇文章男女通用,看懂了就去分享给你的码吧。 描述 给定一个无序…

基于SpringBoot+Vue+MySQL的影院购票系统

系统展示 用户前台界面 管理员后台界面 系统背景 基于SpringBoot、Vue.js与MySQL的影院购票系统,实现了从后端服务到前端展示及数据库管理的全栈开发。该系统通过SpringBoot构建高效稳定的RESTful API,处理用户注册登录、影片信息查询、座位选择、在线购…

无人直播好帮手,视频指定词语消音,消除违禁词,直播视频录制,音视频分离,分段

1.视频消音功能 一键删除或者静音视频中的词语 2.直播视频录制功能 可同时录制多个平台,多个主播,没有数量限制 3.音视频转码 支持多种音视频格式转换 4.视频频分离 分离视频中的音频和视频 5.视频合并分割 合并和按时间分割视屏 目前正在测试中…如有需要可以先使…

【C语言从不挂科到高绩点】16-作用域和自定义头文件

Hello!彦祖们,俺又回来了!!!,继续给大家分享 《C语言从不挂科到高绩点》课程!! 本节将为大家讲解C语言中的函数: 本套课程将会从0基础讲解C语言核心技术,适合人群: 大学…

LLM 大模型研习:当下热门 AI 大模型的生成原理与逻辑

前言 在过去数年里,人工智能领域迎来了前所未有的变革,其中大规模预训练模型的崛起尤为引人注目。像GPT系列、BERT、T5、DALLE和CLIP等模型,凭借强大的语言理解与生成能力,在自然语言处理(NLP)、计算机视觉…

Android Auto助力电动汽车智能驾驶

随着技术的飞速发展,电动汽车(EVs)成为未来出行的重要趋势。然而,EVs 的普及不仅仅代表环保选择,它们还推动了智能汽车技术的发展。Android Auto 的集成无疑为电动汽车用户带来了更便捷和智能的驾驶体验。 一、智能互联…

解决Matlab报错:MEX 文件 ‘D:\MATLAB\toolbox\maple\maplemex.mexw64‘ 无效: 缺少依赖共享库

安装Maple之后,再使用MATLAB就报了以上错误。 按照以下解决方法可以正常运行: 1. 在添加路径下删除D:\matlab\toolbox\Maple 2. 再添加路径 D:\matlab\toolbox\symbolic 3. 保存

UDS 诊断 - InputOutputControlByIdentifier(按标识符的输入输出控制)(0x2F)服务

UDS 诊断服务系列文章目录 诊断和通信管理功能单元 UDS 诊断 - DiagnosticSessionControl(诊断会话控制)(0x10)服务 UDS 诊断 - ECUReset(ECU重置)(0x11)服务 UDS 诊断 - SecurityA…

8月份美国CPI通胀降至+2.5%

根据劳工统计局(BLS)最近发布的一份报告,美国CPI(消费者价格指数)通胀在8月份放缓至2.5%(同比),这是自2021年2月以来的最低水平。最新的通胀数据使美国国债收益率和美元指数上升&…

稀土抗菌剂真的能抗菌吗?

在现代生活中,抗菌剂已经成为了我们日常生活的一部分。然而,面对市面上各种抗菌产品,我们如何才能选择既安全又有效的产品呢?近年来,稀土抗菌剂因其独特的抗菌性能而引起了广泛关注。 稀土抗菌剂的抗菌原理 稀土抗菌剂…

基于 SpringBoot 的学习平台

摘 要 在Internet高速发展的今天,我们生活的各个领域都涉及到计算机的应用,其中包括学习平台的网络应用,在外国学习平台已经是很普遍的方式,不过国内的管理平台可能还处于起步阶段。学习平台具有学习信息管理功能的选择。学习平台…

Jenkins部署若依项目

一、配置环境 机器 jenkins机器 用途:自动化部署前端后端,前后端自动化构建需要配置发送SSH的秘钥和公钥,同时jenkins要有nodejs工具来进行前端打包,maven工具进行后端的打包。 gitlab机器 用途:远程代码仓库拉取和…

OpenHarmony鸿蒙( Beta5.0)智能加湿器开发详解

鸿蒙开发往期必看: 一分钟了解”纯血版!鸿蒙HarmonyOS Next应用开发! “非常详细的” 鸿蒙HarmonyOS Next应用开发学习路线!(从零基础入门到精通) “一杯冰美式的时间” 了解鸿蒙HarmonyOS Next应用开发路…

spring security OAuth2 客户端接入gitee

一、简介 OAuth 是一个开放标准,该标准允许用户让第三方应用访问该用户在某一网站上存储的私密资源(如头像、照片、视频等),并且在这个过租中无须将用户名和密码提供给第三方应用。通过令牌(token)可以实现这一功能,每一个令牌授权一个特定的…

ATF UFS初始化笔记

1. JESD220 中关于UFS初始化的描述 原文 13.1.3 Initialization and boot code download process The initialization and boot code download process is made up of the following phases: partial initialization, boot transfer and initialization completion. 13.1.3.…

果蔬识别系统性能优化之路(四)

目录 前情提要剩下问题 问题排查解决方案下一步 前情提要 果蔬识别系统性能优化之路(三) 剩下问题 同步数据库数据并初始化ivf依然要8,9秒 问题排查 通过断点加时间打印,发生其实初始化ivf的时间很快,慢的是数据在网络间的传…

【读论文】End-to-end reproducible AI pipelines in radiology using the cloud

文章目录 End-to-end reproducible AI pipelines in radiology using the cloud01 研究背景与目的医学成像领域(1)研究现状(2)存在问题 其他研究领域:基因组学(genomics)研究目的:提…