奥鹏教育南开大学2023春9月《Python编程基础》课程期末复习资料含参考答案

2023年9月119:49:20发布者:火花 83 views 举报
总字数:约28976字
第1页

第2页

第3页

第4页

第5页

第6页

第7页

第8页

第9页

第10页

《Python 编程基础》课程期末复习资料

一、客观部分:(单项选择、多项选择、不定项选择、判断)

(一)、单项选择

1 Python 程序在执行一次之后会自动生成扩展名为( B )的字节码文件,

以提高运行效率。

A .py

B .pyc

C .pyb

D .pyf

考核知识点 : 程序基础和 Python 编程环境

参见讲稿章节: 1-02

1.1.1 (考核知识点解释):

Python 是一种解释型语言,但为了提高运行效率, Python 程序在执行一

次之后会自动生成扩展名为 .pyc 的字节码文件;字节码不同于机器语言,但很

容易转换为机器语言。

2、Python3.x 环境创建 Python 脚本文件时,需要将文件编码格式设置为( C

)。

A、ANSI

B、GBK

C、UTF-8

D、UNICODE

考核知识点 : HelloWorld 程序

参见讲稿章节: 1-03

1.1.2 (考核知识点解释)

使用 Python 3.x 环境创建 Python 脚本文件时,需要将文件编码格式设置

UTF-8 ,否则运行脚本时可能会报错。

3、下列选项中,用于接收标准输入数据(即从键盘输入)、返回为 string 类型

(字符串)的函数是( B )。

A、eval

B、input

C、print

D、get

考核知识点 : 输入、输出及 IDLE 环境介绍

参见讲稿章节: 1-04

1.1.3 (考核知识点解释)

input 函数接收标准输入数据(即从键盘输入),返回为 string 类型(字

符串)。

示例:

name=input(" 请输入你的姓名: ") # 输入“张三”

print(name) # 输出“张三”

4、执行“print(0x20)”,则在屏幕上会输出( D )。

A、20

B、0x20

C、16

D、32

考核知识点 : Number 数据类型

参见讲稿章节: 2-02

1.1.4 (考核知识点解释)

整型数字包括正整数、 0 和负整数,不带小数点,无大小限制。整数可以使

用不同的进制来表示:不加任何前缀为十进制整数;加前缀 0o 为八进制整数

加前缀 0x 则为十六进制整数。

例:

a,b,c=10,0o10,0x10 #a b c 的值分别为 10 8 16

5、下列选项中,执行时不会报错的语句是( C )。

A、int('23.5') B、float('23.5+1') C、float('23.5') D、int('2a',8)

考核知识点 : String 数据类型

参见讲稿章节: 2-03

1.1.5 (考核知识点解释)

int 函数:第一个参数是要转换为整数的字符串(要求必须是一个整数字符

串,否则会报错);第二个参数是字符串中整数的数制(不指定则默认为

10 )。例如: int('35') 返回整数 35 int('35',8) 返回整数 29 int('35+1')

会因无法转换而报错。提示: int 函数仅是将字符串中的数字直接转为整数,不

会做任何运算。当要转换的字符串是一个包含运算的表达式时, int 函数会报错。

float 函数:只有一个参数,即要转换为浮点数的字符串(要求必须是一个

整数或浮点数字符串)。例如: float('35') 返回浮点数 35.0 float('35.5')

回浮点数 35.5 float('35.5+3') 则会因无法转换而报错。提示:与 int 函数类

似, float 函数仅是将字符串中的数字直接转为浮点数,不会做任何运算。当要

转换的字符串是一个包含运算的表达式时, float 函数会报错。

6、下列选项中,描述错误的选项是( A )。

A、列表中的元素类型必须相同

B、列表中的元素之间用逗号分隔

C、列表中的元素可以是列表类型

D、列表中可以包含数字类型的元素

考核知识点 : List 数据类型

参见讲稿章节: 2-04

1.1.6 (考核知识点解释)

List (列表)是 Python 中一种非常重要的数据类型。列表中可以包含多个

元素,且元素类型可以不相同。每一元素可以是任一数据类型,包括列表(即列

表嵌套)及后面要介绍的元组、集合、字典。所有元素都写在一对方括号“ []”

每两个元素之间用逗号分隔。对于不包含任何元素的列表,即 [] ,称为空列表。

7 、 已 知 t=(12,34.5,True,'test',3+5j) , 则 下 列 选 项 中 , 输 出 结 果 为

“('test',)”的选项是( C )。

A、t[3]

B、t[4]

C、t[3:4]

D、t[4:5]

考核知识点 : Tuple 数据类型

参见讲稿章节: 2-05

1.1.7 (考核知识点解释)

元组中元素的索引方式与列表中元素的索引方式完全相同。与列表相同,利

用下标“ []” 可以从已有元组中取出其中部分元素形成一个新元组,其语法格式

为: t[beg:end] 。其中, t 为元组, beg 是要取出的部分元素在 t 中的起始下标

end 是要取出的部分元素在 t 中的结束下标。例如:

t=(1, 2.5, 'test', 3+4j, True, [3,1.63], 5.3)

print(t[1:4]) # 输出“ (2.5, 'test', (3+4j))”

print(t[-3:-1]) # 输出“ (True, [3, 1.63])”

如果只访问元组 t 中的某一个元素,则可以使用下面的写法: t[idx] 。其中,

idx 是要访问的元素的下标。例如:

t=(1, 2.5, 'test', 3+4j, True, [3,1.63], 5.3)

print(t[2]) # 输出“ test”

print(t[-3]) # 输出“ True”

8、下列选项中,执行时不会报错的语句是( D )。

A、{['Python',True]}

B、{3.5,[1.2,True]}

C、{3.5,{1.2,True}}

D、{3.5,1.2,True}

考核知识点 : Set 数据类型

参见讲稿章节: 2-06

1.1.8 (考核知识点解释)

与元组和列表类似, Set (集合)中同样可以包含多个不同类型的元素,

但集合中的各元素无序、不允许有相同元素且元素必须是可哈希( hashable

的对象。可哈希对象是指拥有 __hash__(self) 内置函数的对象。列表、集合和字

典类型的数据不是可哈希对象,所以它们不能作为集合中的元素。

9、下列选项中,错误的描述是( C )。

A、字典中的每一个元素是一个键:值对

B、字典中不同元素的键不能相同

C、字典中不同元素的值不能相同

D、通过“{}”可以创建一个空字典

考核知识点 : Dictionary 数据类型

参见讲稿章节: 2-07

1.1.9 (考核知识点解释)

Dictionary (字典)是另一种无序的对象集合。但与集合不同,字典是一

种映射类型,每一个元素是一个键( key : 值( value )对。

在一个字典对象中,键必须是唯一的,即不同元素的键不能相同;另外,

键必须是可哈希数据,即键不能是列表、集合、字典等类型;值可以是任意类型

对于不包含任何元素的字典,即 {} ,称为空字典。

10、3*5**2 的运算结果为( C )。

A、30

B、225

C、75

D、报错

考核知识点 : 序列运算符和运算符优先级

参见讲稿章节: 2-12

1.1.10 (考核知识点解释)

对于具有不同优先级的运算符,会先完成高优先级的运算,再完成低优先

级的运算。例如,表达式 3+5*6 中,“ *” 优先级高于“ +” ,因此会先计算

5*6 ,再计算 3+30 。运算符优先级如下表所示。

奥鹏教育南开大学2023春9月《Python编程基础》课程期末复习资料含参考答案

11、调用函数时函数名后面的一对小括号中给出的参数称为( A )。

A、实参

B、形参

C、类型参数

D、名字参数

考核知识点 : 形参和实参

参见讲稿章节: 3-02

1.1.11 (考核知识点解释)

实参的全称是实际参数,即在调用函数时函数名后面的一对小括号中给出

的参数列表。当调用函数时,会将实参的值传递给对应的形参,函数中再利用形

参做运算、 得到 结果。

12、不定长的位置参数在传递给函数时会被封装成( A )。

A、元组

B、列表

C、集合

D、字典

考核知识点 : 不定长参数

参见讲稿章节: 3-04

1.1.12 (考核知识点解释)

不定 参数,即在调用函数时可以接收任意数 的实参, 这些 实参在传递

给函数时会 被封装 成元组( 置参数)或字典( 键字参数)形式。

般情况 下,不定 参数是 在形参列表的 后,前面传入的实参与 普通

形参一一对应,而后面 剩余 的实参会 被封装 成元组或字典后传给不定 参数。

对于使用 置参数形式的不定 参数, Python 允许 普通 形参 在不定

参数后面,但此时要求在调用函数时必须使用 键字参数方式给不定 参数

后面的形参传递实参。对于有默认参数的形参,在调用函数时 可以不传入相应

实参。

13、一个脚本文件 M.py 单独执行时,其__name__变量的值为( B )。

A、M

B、__main__

C、M.py

D、不存在

考核知识点 : 全局变量 __name__ 和系统模块

参见讲稿章节: 3-08

1.1.13 (考核知识点解释)

每个 模块 中都有的一个全部 变量 __name__

__name__ 的作用是 取当前 模块 的名称,如果当前 模块 单独 执行的,

则其 __name__ 的值 __main__ ;否则,如果是作为 模块导 入,则其

__name__ 的值 模块 的名字。

例如:

module.py 脚本文件中的 码:

print(__name__) # 输出全 局变量 __name__ 的值

testmodule.py 脚本文件中的 码:

import module # module 模块

提示:当 们执行 module.py 时,会在 屏幕上 输出: __main__ ;而当

们执行 testmodule.py 时,则会在 屏幕上 输出: module 。即 module.py

运行和作为 模块导 入时其 __name__ 的值是不同的。

14、局部变量的作用域是( B )。

A、从定义变量的位置到文件结束位置

B、从定义变量的位置到函数结束位置

C、所有函数

D、所有文件

考核知识点 : 变量的作用域和局部变量

参见讲稿章节: 3-12

1.1.14 (考核知识点解释)

在一个函数中定 变量就 变量 (包括形参),其作用 是从定

变量 函数结束 置。

15、内层函数使用外层函数中定义的变量,应使用( B )关键字。

A、local

B、nonlocal

C、global

D、nonglobal

考核知识点 : nonlocal 关键字

参见讲稿章节: 3-14

1.1.15 (考核知识点解释)

Python 中,函数的定 可以嵌套,即在一个函数的函数 中可以包含

另一个函数的定 通过 nonlocal 键字,可以使内 的函数直接使用外

数中定 变量

例:使用 nonlocal 键字示例。

def outer(): # 函数 outer

x=10 # 义局 变量 x 并赋 10

def inner(): # outer 函数中定 嵌套函数 inner

nonlocal x #nonlocal 声明

x=20 # x 20

print('inner 函数中的 x 值为: ',x)

inner() # outer 函数中调用 inner 函数

print('outer 函数中的 x 值为: ',x)

outer() # 调用 outer 函数

运行结果为:

inner 函数中的 x 值为: 20

outer 函数中的 x 值为: 20

提示: 通过 nonlocal x” 声明 inner 函数中使用 outer 函数中定

变量 x 、而不是重新定 一个 变量 x

16、lambda 函数是指( B )。

A、在一个函数内部通过调用自己完成问题的求解

B、不使用 def 定义函数的形式

C、一个函数不断被其他函数调用完成问题的求解

D、把函数作为参数的一种函数

考核知识点 : 高阶函数和 lambda 函数

参见讲稿章节: 3-16

1.1.16 (考核知识点解释)

lambda 函数 称为 名函数,是一种不使用 def 函数的形式,其作

用是能 快速 一个 简短 的函数。 lambda 函数的函数 只是一个表达式,所以

lambda 函数 常只能实 现比较简单 能。

语法格式为:

lambda [ 参数 1[, 参数 2, ..., 参数 n]]: 表达式

其中, 号后面的表达式的计算结果即为 lambda 函数的返回值。

17、在闭包中,外层函数的返回值是( B )。

A、内层函数的调用

B、内层函数的

C、 任意

D、 返回值

考核知识点 : 闭包

参见讲稿章节: 3-17

1.1.17 (考核知识点解释)

如果内 函数使用了外 函数中定 变量 且外 函数的返回值

是内 函数的引用, 就构 成了 包。定 在外 函数中但 函数使用的 变量

称为自 由变量

18、类中的( A )对应一个类可以用 来保 哪些 数据。

A、 属性

B、 方法

C、数据

D、对

考核知识点 : 类的定义和创建实例

参见讲稿章节: 4-02

1.1.18 (考核知识点解释)

在一个类中, 了可以包含前面所 属性 可以包含各种方法。 属性

应一个类可以用来 保存哪些 数据,而方法对应一个类可以 支持哪些操 作(即数

处理 )。

19、类中在 情况 由系统 自动执行的 方法 是( C )。

A、类 方法

B、 静态方法

C、内置 方法

D、 方法

考核知识点 : 类中普通方法定义及调用

参见讲稿章节: 4-04

1.1.19 (考核知识点解释)

类中的方法分为两类: 普通 方法和内置方法。

1 普通 方法需要 通过 类的实例对象 据方法名调用;

2 )内置方法是在 情况 由系统 自动执行。

20、 析构方法 的形参个数为( B )。

A、0

B、1

C、 至少 1 个

D、不

考核知识点 : 析构方法

参见讲稿章节: 4-07

1.1.20 (考核知识点解释)

析构 方法是类的另一个内置方法,它的方法名为 __del__ ,在 销毁 一个类对

象时会自动执行,负 完成 待销毁 对象的 资源清理工 作,如 关闭 文件等。

例: 析构 方法示例。

class Student: # Student

def __init__(self,name): # 义构造 方法

self.name=name

print(' 姓名为 %s 的对象 创建 '%self.name)

def __del__(self): # 义析构 方法

print(' 姓名为 %s 的对象 被销毁! '%self.name)

21、用于 获取父 代理 方法 是( D )。

A、parent

B、proxy

C、delegate

D、super

考核知识点 : super 方法

参见讲稿章节: 4-12

1.1.21 (考核知识点解释)

super 方法用于 类的 代理 对象,以执行已在 类中 重写的 类方

法,其语法格式为:

super([ 类名 [, 对象名或类名 ]])

22、类 方法 一个形参对应( A )。

A、类

B、对

C、 一个实参

D、 第二 个实参

考核知识点 : 类方法和静态方法

参见讲稿章节: 4-14

1.1.22 (考核知识点解释)

类方法是指使用 @classmethod 修饰 的方法,其第一个参数是类本 (而

不是类的实例对象)。类方法的 点是 可以 通过 类名直接调用, 可以 通过

的实例对象调用。

23、为 A 类中的 t 属性 定义一个 获取属性 值的 方法 (即 getter),则应使用(

A )装 饰器

A、 @ property

B、 @ t.getter

C、 @ property.getter

D、t.property.getter

考核知识点 : @property 装饰器

参见讲稿章节: 4-16

1.1.23 (考核知识点解释)

Python @property 装饰 器,可以将类中 属性 的访问和 作自

动转为方法调用, 样可以在方法中对 属性 值的取值 范围 做一 些条 件限定。

直 接 使 用 @property 可 以 定 一 个 用 于 属 性 值 的 方 法 ( 即

getter )。如果要定 一个设置 属性 值的方法( setter ),则需要使用名字“ @

属性 .setter” 装饰 器。

如果一个 属性 只有用于 属性 值的 getter 方法,而 有用于设置 属性

setter 方法,则 该属性 是一个只 读属性 ,只允许 该属性 的值、而不能设

该属性 的值。

24、已知“a=[1,[2,3]]” “b=a[:]”,则执行“a[1]=10”后,b 的值为(

B )。

A、[1,10]

B、[1,[2,3]]

C、[1,[10,3]]

D、报错

考核知识点 : 复制列表元素

参见讲稿章节: 5-03

1.1.24 (考核知识点解释)

例:利用元素 取方法,实 现修改 一个对象中的元素值不会 影响 另一个对

象。

ls1=[1,2,3] # 创建列表对象 并赋 变量 ls1

ls2=ls1[:] # 通过 ls1[:] ls1 的所有元素 取生成新对象 并赋 ls2

print('ls1 ls2 的值分别为: ',ls1,ls2)

print('ls1 ls2 的内 存地址 分别为: ',id(ls1),id(ls2))

ls1[1]=5 # ls1 中下标为 1 的元素值 修改 5

print('ls1 ls2 的值分别为: ',ls1,ls2)

ls1=[1,[2,3]] # 创建列表对象 并赋 变量 ls1

ls2=ls1[:] # 通过 ls1[:] ls1 的所有元素 取生成新对象 并赋 ls2

print('ls1 ls2 的值分别为: ',ls1,ls2)

print('ls1 ls2 的内 存地址 分别为: ',id(ls1),id(ls2))

print('ls1[1] ls2[1] 的内 存地址 分别为: ',id(ls1[1]),id(ls2[1]))

总页数:40
提示:下载前请核对题目。客服微信:diandahome
下载的文档都包含参考答案
特别声明:以上内容(如有图片或文件亦包括在内)为“电大之家”用户上传并发布,仅代表该用户观点,本平台仅提供信息发布。