Python 程序的输出 | 第十四套(字典)

简介: Python 程序的输出 | 第十四套(字典)
  • 难度级别: 中等

注意:所有这些程序的输出都在 Python3 上进行了测试

1) 以下程序的输出是什么?

D = dict()
for x in enumerate(range(2)):
  D[x[0]] = x[1]
  D[x[1]+7] = x[0]
print(D)

a) KeyError

b) {0:1, 7:0, 1:1, 8:0}

c) {0:0, 7:0, 1:1, 8:1}

d) {1:1, 7: 2, 0: 1, 8

答:(c)

解释:  enumerate() 将返回一个元组,循环将有 x = (0, 0), (1, 1)。因此 D[0] = 0, D[1] = 1, D[0 + 7] = D[7] = 0 和 D[1 + 7] = D[8] = 1。

注意:字典是无序的,所以每个输出中键值对的顺序可能不同。

2) 以下程序的输出是什么?

D = {1 : 1, 2 : '2', '1' : 2, '2' : 3}
D['1'] = 2
print(D[D[D[str(D[1])]]])

a) 2

b) 3

c) '2'

d) KeyError

答: (b)  

解释: 递归使用简单的键值对,D[1] = 1, str(1) = '1'。所以,D[str(D[1])] = D['1'] = 2, D[2] = '2' and D['2'] = 3.

3) 下面程序的输出是什么?

D = {1 : {'A' : {1 : "A"}, 2 : "B"}, 3 :"C", 'B' : "D", "D": 'E'}
print(D[D[D[1][2]]], end = " ")
print(D[D[1]["A"][2]])

a) DC

b) EB

c) DB

d) E KeyError

答. (d)  

说明: 上例中使用了键值索引。D[1] = {'A' : {1 : “A”}, 2 : “B”}, D[1][2] = “B”, D[D[1][2]] = D[ “B”] = “D”和 D[“D”] = “E”。D[1] = {'A' : {1 : “A”}, 2 : “B”}, D[1][“A”] = {1 : “A”} 和 D[1][“A ”][2] 不存在,因此 KeyError.

4) 以下程序的输出是什么?

D = dict()
for i in range (3):
  for j in range(2):
    D[i] = j
print(D)

a) {0:0, 1:0, 2:0}

b) {0:1, 1:1, 2:1}

c) {0:0, 1:0, 2:0, 0:1, 1 : 1, 2: 1}

d) TypeError: Immutable object

答. (b)  

解释: 第一个循环将给 i 0、1 和 2 三个值。在空字典中,在 j 循环中添加和覆盖值,例如。由于覆盖,D[0] = [0] 变为 D[0] = 1。

5) 以下哪个选项可能是以下程序的输出?

D = {1 : [1, 2, 3], 2: (4, 6, 8)}
D[1].append(4)
print(D[1], end = " ")
L = [D[2]]
L.append(10)
D[2] = tuple(L)
print(D[2])

a) [1, 2, 3, 4] [4, 6, 8, 10]

b) [1, 2, 3, 4] ((4, 6, 8), 10)

c) '[1, 2, 3, 4] TypeError: tuples are immutable

d) [1, 2, 3, 4] (4, 6, 8, 10)

答. (b)  

解释: 在第一部分中使用键值索引并将 4 附加到列表中。由于元组是不可变的,所以在第二部分中,元组被转换为一个列表,最后将值 10 添加到新列表 'L' 中,然后再转换回一个元组。


目录
相关文章
|
1月前
|
存储 NoSQL 数据库连接
在Python程序中实现LevelDB的海量key的分批次扫描
通过本文的步骤,您可以在Python程序中实现对LevelDB海量key的分批次扫描。这样不仅能够有效地管理大规模数据,还可以避免一次性加载过多数据到内存中,提高程序的性能和稳定性。希望这篇指南能为您的开发工作提供实用的帮助。
74 28
|
1月前
|
JSON 监控 安全
深入理解 Python 的 eval() 函数与空全局字典 {}
`eval()` 函数在 Python 中能将字符串解析为代码并执行,但伴随安全风险,尤其在处理不受信任的输入时。传递空全局字典 {} 可限制其访问内置对象,但仍存隐患。建议通过限制函数和变量、使用沙箱环境、避免复杂表达式、验证输入等提高安全性。更推荐使用 `ast.literal_eval()`、自定义解析器或 JSON 解析等替代方案,以确保代码安全性和可靠性。
45 2
|
2月前
|
Shell 开发工具 Python
如何在vim里直接运行python程序
如何在vim里直接运行python程序
|
2月前
|
安全 API C语言
Python程序的安全逆向(关于我的OPENAI的APIkey是如何被盗的)
本文介绍了如何使用C语言编写一个简单的文件加解密程序,并讨论了如何为编译后的软件添加图标。此外,文章还探讨了Python的.pyc、.pyd等文件的原理,以及如何生成和使用.pyd文件来增强代码的安全性。通过视频和教程,作者详细讲解了生成.pyd文件的过程,并分享了逆向分析.pyd文件的方法。最后,文章提到可以通过定制Python解释器来进一步保护源代码。
87 6
|
2月前
|
IDE 程序员 开发工具
Python编程入门:打造你的第一个程序
迈出编程的第一步,就像在未知的海洋中航行。本文是你启航的指南针,带你了解Python这门语言的魅力所在,并手把手教你构建第一个属于自己的程序。从安装环境到编写代码,我们将一步步走过这段旅程。准备好了吗?让我们开始吧!
|
3月前
|
XML JSON API
如何使用Python将字典转换为XML
本文介绍了如何使用Python中的`xml.etree.ElementTree`库将字典数据结构转换为XML格式。通过定义递归函数处理字典到XML元素的转换,生成符合标准的XML文档,适用于与旧系统交互或需支持复杂文档结构的场景。示例代码展示了将一个简单字典转换为XML的具体实现过程。
31 1
|
3月前
|
存储 人工智能 数据挖掘
Python编程入门:打造你的第一个程序
本文旨在为初学者提供Python编程的初步指导,通过介绍Python语言的基础概念、开发环境的搭建以及一个简单的代码示例,帮助读者快速入门。文章将引导你理解编程思维,学会如何编写、运行和调试Python代码,从而开启编程之旅。
78 2
|
3月前
|
存储 Python
Python编程入门:理解基础语法与编写简单程序
本文旨在为初学者提供一个关于如何开始使用Python编程语言的指南。我们将从安装Python环境开始,逐步介绍变量、数据类型、控制结构、函数和模块等基本概念。通过实例演示和练习,读者将学会如何编写简单的Python程序,并了解如何解决常见的编程问题。文章最后将提供一些资源,以供进一步学习和实践。
80 1
|
5月前
|
关系型数据库 MySQL 数据库
Python MySQL查询返回字典类型数据的方法
通过使用 `mysql-connector-python`库并选择 `MySQLCursorDict`作为游标类型,您可以轻松地将MySQL查询结果以字典类型返回。这种方式提高了代码的可读性,使得数据操作更加直观和方便。上述步骤和示例代码展示了如何实现这一功能,希望对您的项目开发有所帮助。
205 4
|
6月前
|
存储 Python 容器
python字典的常用操作方法
python字典的常用操作方法

热门文章

最新文章

推荐镜像

更多