Python大学教程(第2版) 第5章 题目_第1页
Python大学教程(第2版) 第5章 题目_第2页
Python大学教程(第2版) 第5章 题目_第3页
Python大学教程(第2版) 第5章 题目_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

习题

一、选择题

1.如何在Python中创建一个空集合?

A.set{}

B.set()

C.{)

D.D

2.如何使用切片操作来获取列表myjist的从第2个元素到倒数第3个元素(包括本身)

的所有元素?

A.my_list[1:-3]

B.my_list[2:-2]

C.my_list[1:-2]

D.myJist[2,-3]

3.关于以下程序输出结果的描述,正确的选项是:

1=[1,2,3,4,5,6,7]

print(l.pop(0),len(l))

A.16

B.17

C.07

D.06

4.在Python中,下列哪个选项是正确的元组拆包(tupleunpacking)语法?

A.a,b=(1,2)

B.ab=(1,2)

C.(a,b)=1,2

D,a,b->(1,2)

5.在Python中,下列明唧方法可以实现对字典的合并(不会改变原字典)?

A.dictl+dict2

B.dictl.extend(dict2)

C.{**dictl,**dict2}

D.dictl.update(dict2)

二、对错题

1.Python3中的字典和集合都是有序存储的。

2.在Python中使用列表推导式时,可以使用if语句进行条件过滤,但不能使用elif

或else语句

3.列表切片得到的列表中的数据是原有数据的拷贝,而不是原有列表的元素。

4.列表在存取元素时要比元组慢。

5.在Python中,要检查一个元素是否在字典中,与检查一个元素是否在集合中的时

间复杂度相同。

三、填空题

1.可以使用一行代码:获取my」ist=[1,2,345,6]中所有3

的倍数的元素组成的列表。

2.使用方法可以向字典中添加一个新的键值对。

3.在执行x,y,z=input().split()时,发生了序列的__过程。

4.使用___生成一个以4为开始,10为结束的,每次递增2的等差数列.

5.内置函数可以将一个列表转换为集合。

四、简答题

1.简要说明列表、元组、集合与字典这几种数据结构的相同点和不同点。

2.列表直找有几种方法?每种方法的主要特点是什么?

3.什么是元组封装和序列拆封?这两种特性如何在编程中应用?试举例说明。

4.集合和字典的底层数据结构是怎么实现的?

5.请简要叙述列表、元组、集合、字典这四种不同数据结构适合什么样的应用场景。

答案:

一、选择题

BCAAC

二、对错题

FTFTT

三、填空题

l.(iforiinmy_listifi%3==0]

2.update

3.拆包/拆封

4.range(4,10,2)

5.set()

四、简答题

1.相同点:都可以存储一系列数据。支持使用in关键字在行成员检查。支持使用len()

函数获取元素数量。

不同点:列表(Lisi):有序的可变数据结构,使用方括号'[]'表示。列表中的元素可

以是不同的数据类型,支持添加、删除、修改操作。列表支持索引和切片。元组(Tuple):

有序的不可变数据结构,使用圆括号'()'表示。元组中的元素可以是不同的数据类型,但

是不支持添加、删除、修改操作。元组支持索引和切片。集合(Sei):无序的可变数据结

构,使用花括号'(}'表示。集合中的元素必须是唯一的,不支持重复。集合中的元素必须

是不可变数据类型(如数字、字符串、元组等)。集合支持添加、删除操作,但不支持修改

操作。集合不支持索引和切片。字典(Dictionary):无序的可变数据结构,(Pylhon3中变

得有序)使用花括号'{}'表示。字典是键值对(key-valuepair)的集合。字典中的键必须

是唯一的,不支持重嵬,且必须是不可变数据类型.字典支持添加、删除、修改操作。字典

不支持索引和切片,而是通过键访问相应的值。(言之有理即可)

2.

Lin关键字:简单易用,检查元素是否在列表中。

2.index。'方法:查找元素并返何其索引,如果元素不存在则抛出ValueErroro

3.列表推导式:筛选满足特定条件的元素。

4.enumerate()函数:返I口I元素及其索引,适用于需要保留索引的场景。

3.元组封装(Tuplepacking):将多个值组合成一个元组的过程称为元组封装。在Python

中,你可以将多个值用逗号分隔,无需使用圆括号,Python会自动将它们组合成一个元组。

例如:

packed_tuple=1,2,3

print(packed_tuple)#输出:(1,2,3)

序列拆封(Sequenceunpacking):将序列(如元组、列表等)中的元素分别赋值给多个变

量的过程称为序列拆封。要进行序列拆封,需要确保变量的数量与序列中的元素数量相同。

例如:

my」uple=(4,5,6)

a,b,c=my_tuple

print(a,b,c)#输出:456

在编程中,元组封装和序列拆封可以用于多种场景,提高代码的可读性和简洁性。最常用的

场景变量交换:a,b=b,a等

4.在Python中,集合和字典的底层数据结构是基于哈希表实现的。哈希表是一•种高

效的数据结构,能够在平均情况下实现0(1)的查找、插入和删除操作。

5.

1.列表(Lisi):适用于需要有序的、可修改的数据结构。

-当需要频繁地添加、删除和修改元素时。

-适用于实现栈、队列等数据结构。

-当需要对数据进行索引和切片操作时。

2.元组(Tuple):

-适用于需要有序的、不可修改的数据结构。

-当数据集合在整个程序运行过程中保持不变时。

-当需要使用数据集合作为字典的键或集合的元素时(因为这些场景需要不可变数

据类型)。

-当需要对数据进行索引和切片操作,但不需要修改数据时。

3.集合(Set):

-适用于需要无序的、不重复的数据结构。

-当需要进行成员检查、集合运算(如交集、并集、差集等)时

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论