《Python 语言程序设计》习题集
一、判断题......................................................................1
二、选择题......................................................................9
三、填空题....................................................................10
四、有选项程序阅读题..................................................21
五、无选项程序阅读题..................................................21
六、程序填空题 .............................................................23
七、问答题 ....................................................................24
八、编程题 ....................................................................24
九、综合拓展题 .............................................................25
一、判断题
1. Python 是一种跨平台、开源、免费的高级动态编程语言。 (
)
2. Python 3.x 完全兼容 Python 2.x。 (
)
3. 在 Windows 平台上编写的 Python 程序无法在 Unix 平台运行。 (
)
4. 可以使用 py2exe 或 pyinstaller 等扩展库把 Python 源程序打包成为 exe 文件,从而脱离 Python 环
境在 Windows 平台上运行。 (
)
5. Python 3.x 和 Python 2.x 唯一的区别就是:print 在 Python 2.x 中是输出语句,而在 Python 3.x
中是输出函数。 (
)
6. 不可以在同一台计算机上安装多个 Python 版本。 (
)
7. 在 IDLE 交互模式下,一个下划线“_”表示解释器中最后一次显示的内容或最后一次语句正确执行的
输出结果。 (
)
8. Python 程序只能在安装了 Python 环境的计算机上以源代码形式运行。 (
)
9.不同版本的 Python 不能安装到同一台计算机上。 (
)
10.Python 使用缩进来体现代码之间的逻辑关系。 (
)
11.为了让代码更加紧凑,编写 Python 程序时应尽量避免加入空格和空行。 (
)
12.在一个软件的设计与开发中,所有类名、函数名、变量名都应该遵循统一的风格和规范。 (
)
13.Python 代码的注释只有一种方式,那就是使用#符号。 (
)
14.放在一对三引号之间的任何内容将被认为是注释。 (
)
15.Python 变量使用前必须先声明,并且一旦声明就不能再当前作用域内改变其类型。 (
)
16.Python 采用的是基于值的自动内存管理方式。 (
17.在任何时刻相同的值在内存中都只保留一份。 (
)
)
18.Python 不允许使用关键字作为变量名,允许使用内置函数名作为变量名,但这会改变函数名的含义。
(
)
19.在 Python 中可以使用 if 作为变量名。 (
)
20.在 Python 3.x 中可以使用中文作为变量名。 (
)
21.Python 变量名必须以字母或下划线开头,并且区分字母大小写。 (
)
22.0o12f 是合法的八进制数字。 (
)
23.在 Python 中 0xad 是合法的十六进制数字表示形式。 (
)
24.3+4j 是合法 Python 数字类型。 (
)
25.在 Python 中 0oa1 是合法的八进制数字表示形式。 (
)
26.已知 x = 3,那么执行语句 x+=6 之后,x 的内存地址不变。 (
)
27.在 Python 中可以使用 for 作为变量名。 (
)
28.在 Python 中可以使用 id 作为变量名,尽管不建议这样做。 (
)
29.Python 关键字不可以作为变量名。 (
)
30.Python 变量名区分大小写,所以 student 和 Student 不是同一个变量。 (
)
1
31.已知 x = 3,那么执行 x += 6 语句前后 x 的内存地址是不变的。 (
)
32.在 Python 中,变量不直接存储值,而是存储值的引用,也就是值在内存中的地址。 (
)
33.9999**9999 这样的命令在 Python 中无法运行。 (
)
34.运算符 / 在 Python 2.x 和 Python 3.x 中具有相同的功能。 (
)
35.3+4j 不是合法的 Python 表达式。 (
)
36.表达式 {1, 3, 2} > {1, 2, 3} 的值为 True。 (
)
37.表达式 'a'+1 的值为'b'。 (
)
38.一个数字 5 也是合法的 Python 表达式。 (
39.当作为条件表达式时,[]与 None 等价。 (
40.表达式 [] == None 的值为 True。 (
)
41.当作为条件表达式时,{}与 None 等价。 (
)
)
)
42.表达式 {}==None 的值为 True。 (
)
43.表达式 pow(3,2) == 3**2 的值为 True。 (
)
44.当作为条件表达式时,空值、空字符串、空列表、空元组、空字典、空集合、空迭代对象以及任意形
式的数字 0 都等价于 False。 (
)
45.表达式 int('1'*64, 2)与 sum(2**i for i in range(64))的计算结果是一样的,但是前者更快一些。
(
)
46.在条件表达式中不允许使用赋值运算符“=”,会提示语法错误。 (
)
47.已知 x = 3,那么赋值语句 x = 'abcedfg'是无法正常执行的。 (
)
48.语句 pass 仅起到占位符的作用,并不会做任何操作。 (
)
49.Python 2.x 和 Python 3.x 中 input()函数的返回值都是字符串。 (
)
50.在 Python 3.x 中,使用内置函数 input()接收用户输入时,不论用户输入的什么格式,一律按字符串
进行返回。 (
)
51.只有 Python 扩展库才需要导入以后才能使用其中的对象,Python 标准库不需要导入即可使用其中的
所有对象和方法。 (
)
52.尽管可以使用 import 语句一次导入任意多个标准库或扩展库,但是仍建议每次只导入一个标准库或
扩展库。 (
)
53.执行语句 from math import sin 之后,可以直接使用 sin() 函数,例如 sin(3)。 (
)
54.如果只需要 math 模块中的 sin()函数,建议使用 from math import sin 来导入,而不要使用 import
math 导入整个模块。 (
)
55.加法运算符可以用来连接字符串并生成新字符串。 (
)
56.在 UTF-8 编码中一个汉字需要占用 3 个字节。 (
)
57.在 GBK 和 CP936 编码中一个汉字需要 2 个字节。 (
)
58.相同内容的字符串使用不同的编码格式进行编码得到的结果并不完全相同。 (
)
59.在 Python 中,任意长的字符串都遵守驻留机制。 (
)
60.Python 字符串方法 replace()对字符串进行原地修改。 (
)
61.如果需要连接大量字符串成为一个字符串,那么使用字符串对象的 join()方法比运算符+具有更高的
效率。 (
)
62.已知 x 为非空字符串,那么表达式 ''.join(x.split()) == x 的值一定为 True。 (
)
63.已知 x 为非空字符串,那么表达式 ','.join(x.split(',')) == x 的值一定为 True。 (
)
64.已知 x 和 y 是两个字符串,那么表达式 sum((1 for i,j in zip(x,y) if i==j))可以用来计算两个字
符串中对应位置字符相等的个数。 (
)
65.Python 3.x 中字符串对象的 encode()方法默认使用 utf8 作为编码方式。 (
)
66.已知 x = 'hellow world.'.encode(),那么表达式 x.decode('gbk')的值为'hellow world.'。 (
)
67.已知 x = 'Python 是一种非常好的编程语言'.encode(),那么表达式 x.decode('gbk')的值为'Python
2
是一种非常好的编程语言'。 (
)
68.对字符串信息进行编码以后,必须使用同样的或者兼容的编码格式进行解码才能还原本来的信息。
(
)
69.Python 运算符%不仅可以用来求余数,还可以用来格式化字符串。 (
)
70.带有 else 子句的循环如果因为执行了 break 语句而退出的话,则会执行 else 子句中的代码。 (
)
71.对于带有 else 子句的循环语句,如果是因为循环条件表达式不成立而自然结束循环,则执行 else 子
句中的代码。 (
)
72.如果仅仅是用于控制循环次数,那么使用 for i in range(20)和 for i in range(20, 40)的作用是
等价的。 (
)
73.在循环中 continue 语句的作用是跳出当前循环。 (
)
74.在编写多层循环时,为了提高运行效率,应尽量减少内循环中不必要的计算。 (
)
75.假设已导入 random 标准库,那么表达式 max([random.randint(1, 10) for i in range(10)]) 的值
一定是 10。 (
)
76.Python 标准库 random 的方法 randint(m,n)用来生成一个[m,n]区间上的随机整数。 (
)
77.假设 random 模块已导入,那么表达式 random.sample(range(10), 20) 的作用是生成 20 个不重复的
整数。 (
)
78.假设 random 模块已导入,那么表达式 random.sample(range(10), 7) 的作用是生成 7 个不重复的整
数。 (
)
79.使用 random 模块的函数 randint(1, 100)获取随机数时,有可能会得到 100。 (
)
80.程序中异常处理结构在大多数情况下是没必要的。 (
)
81.在 try...except...else 结构中,如果 try 块的语句引发了异常则会执行 else 块中的代码。 (
)
82.异常处理结构中的 finally 块中代码仍然有可能出错从而再次引发异常。 (
)
83.带有 else 子句的异常处理结构,如果不发生异常则执行 else 子句中的代码。 (
)
84.异常处理结构也不是万能的,处理异常的代码也有引发异常的可能。 (
)
85.在异常处理结构中,不论是否发生异常,finally 子句中的代码总是会执行的。 (
)
86.由于异常处理结构 try...except...finally...中 finally 里的语句块总是被执行的,所以把关闭文
件的代码放到 finally 块里肯定是万无一失,一定能保证文件被正确关闭并且不会引发任何异常。
(
)
87.调用函数时,在实参前面加一个型号*表示序列解包。 (
)
88.函数是代码复用的一种方式。 (
)
89.定义 Python 函数时必须指定函数返回值类型。 (
)
90.定义 Python 函数时,如果函数中没有 return 语句,则默认返回空值 None。 (
)
91.如果在函数中有语句 return 3,那么该函数一定会返回整数 3。 (
)
92.函数中必须包含 return 语句。 (
)
93.函数中的 return 语句一定能够得到执行。 (
)
94.全局变量会增加不同函数之间的隐式耦合度,从而降低代码可读性,因此应尽量避免过多使用全局变
量。 (
)
95.函数内部定义的局部变量当函数调用结束后被自动删除。 (
)
96.在函数内部,既可以使用 global 来声明使用外部全局变量,也可以使用 global 直接定义全局变量。
(
)
97.在函数内部没有办法定义全局变量。 (
)
98.在函数内部直接修改形参的值并不影响外部实参的值。 (
)
99.在函数内部没有任何方法可以影响实参的值。 (
)
100.在同一个作用域内,局部变量会隐藏同名的全局变量。 (
)
101.在 Python 中定义函数时不需要声明函数参数的类型。 (
)
3
102.在 Python 中定义函数时不需要声明函数的返回值类型。 (
)
103.在函数中没有任何办法可以通过形参来影响实参的值。 (
)
104.在定义函数时,某个参数名字前面带有一个*符号表示可变长度参数,可以接收任意多个普通实参并
存放于一个元组之中。 (
)
105.在定义函数时,某个参数名字前面带有两个*符号表示可变长度参数,可以接收任意多个关键参数并
将其存放于一个字典之中。 (
)
106.定义函数时,带有默认值的参数必须出现在参数列表的最右端,任何一个带有默认值的参数右边不
允许出现没有默认值的参数。 (
)
107.包含 yield 语句的函数一般成为生成器函数,可以用来创建生成器对象。 (
)
108.在函数中 yield 语句的作用和 return 完全一样。 (
)
109.函数和对象方法是一样的,内部实现和外部调用都没有任何区别。 (
)
110.lambda 表达式中可以使用任意复杂的表达式,但是必须只编写一个表达式。 (
)
111.g = lambda x: 3 不是一个合法的赋值表达式。 (
)
112.无法使用 lambda 表达式定义有名字的函数。 (
)
113.在 Python 3.x 中语句 print(*[1,2,3]) 不能正确执行。 (
)
114.定义函数时,即使该函数不需要接收任何参数,也必须保留一对空的圆括号来表示这是一个函数。
(
)
115.编写函数时,一般建议先对参数进行合法性检查,然后再编写正常的功能代码。 (
)
116.一个函数如果带有默认值参数,那么必须所有参数都设置默认值。 (
)
117.调用带有默认值参数的函数时,不能为默认值参数传递任何值,必须使用函数定义时设置的默认值。
(
)
118.形参可以看做是函数内部的局部变量,函数运行结束之后形参就不可访问了。 (
)
119.在调用函数时,可以通过关键参数的形式进行传值,从而避免必须记住函数形参顺序的麻烦。 (
)
120.在调用函数时,必须牢记函数形参顺序才能正确传值。 (
)
121.调用函数时传递的实参个数必须与函数形参个数相等才行。 (
)
122.在编写函数时,建议首先对形参进行类型检查和数值范围检查之后再编写功能代码,或者使用异常
处理结构,尽量避免代码抛出异常而导致程序崩溃。 (
)
123.不同作用域中的同名变量之间互相不影响,也就是说,在不同的作用域内可以定义同名的变量。
(
)
124.在函数内部没有任何声明的情况下直接为某个变量赋值,这个变量一定是函数内部的局部变量。
(
)
125.在 Python 3.x 中 reduce()是内置函数。 (
)
126.内置函数 len()返回指定序列的元素个数,适用于列表、元组、字符串、字典、集合以及 range、zip
等迭代对象。 (
)
127.在 Python 3.5 中运算符+不仅可以实现数值的相加、字符串连接,还可以实现列表、元组的合并和
集合的并集运算。 (
)
128.Python 列表、元组、字符串都属于有序序列。 (
)
129.Python 字典和集合属于无序序列。 (
)
130.只能对列表进行切片操作,不能对元组和字符串进行切片操作。 (
)
131.只能通过切片访问元组中的元素,不能使用切片修改元组中的元素。 (
)
132.字符串属于 Python 有序序列,和列表、元组一样都支持双向索引。 (
)
133.Python 字典和集合支持双向索引。 (
)
134.列表可以作为字典的“键”。 (
)
135.已知 x 为非空列表,那么表达式 sorted(x, reverse=True) == list(reversed(x)) 的值一定是 True。
(
)
4
136.已知 x 为非空列表,那么 x.sort(reverse=True)和 x.reverse()的作用是等价的。 (
)
137.Python 列表中所有元素必须为相同类型的数据。 (
)
138.列表对象的 append()方法属于原地操作,用于在列表尾部追加一个元素。 (
)
139.对于列表而言,在尾部追加元素比在中间位置插入元素速度更快一些,尤其是对于包含大量元素的
列表。 (
)
140.假设有非空列表 x,那么 x.append(3)、x = x+[3]与 x.insert(0,3)在执行时间上基本没有太大区别。
(
)
141.使用 Python 列表的方法 insert()为列表插入元素时会改变列表中插入位置之后元素的索引。
(
)
142.假设 x 为列表对象,那么 x.pop()和 x.pop(-1)的作用是一样的。 (
)
143.使用 del 命令或者列表对象的 remove()方法删除列表中元素时会影响列表中部分元素的索引。
(
)
144.已知列表 x = [1, 2, 3],那么执行语句 x = 3 之后,变量 x 的地址不变。 (
)
145.使用列表对象的 remove()方法可以删除列表中首次出现的指定元素,如果列表中不存在要删除的指
定元素则抛出异常。 (
)
146.假设 x 是含有 5 个元素的列表,那么切片操作 x[10:]是无法执行的,会抛出异常。 (
)
147.只能通过切片访问列表中的元素,不能使用切片修改列表中的元素。 (
)
148.删除列表中重复元素最简单的方法是将其转换为集合后再重新转换为列表。 (
)
149.已知列表 x 中包含超过 5 个以上的元素,那么语句 x = x[:5]+x[5:] 的作用是将列表 x 中的元素循
环左移 5 位。 (
)
150.对于生成器对象 x = (3 for i in range(5)),连续两次执行 list(x)的结果是一样的。 (
)
151.对于大量列表的连接,extend()方法比运算符+具有更高的效率。 (
)
152.列表对象的 extend()方法属于原地操作,调用前后列表对象的地址不变。 (
)
153.对于数字 n,如果表达式 0 not in [n%d for d in range(2, n)] 的值为 True 则说明 n 是素数。 (
)
154.已知 seq 为长度大于 10 的列表,并且已导入 random 模块,那么[random.choice(seq) for i in
range(10)]和 random.sample(seq,10)等价。 (
)
155.假设 os 模块已导入,那么列表推导式 [filename for filename in os.listdir('C:\\Windows') if
filename.endswith('.exe')] 的 作 用 是 列 出 C:\Windows 文 件 夹 中 所 有 扩 展 名 为 .exe 的 文 件 。
(
)
156.表达式 list('[1, 2, 3]') 的值是[1, 2, 3]。 (
)
157.同一个列表对象中的元素类型可以各不相同。 (
158.同一个列表对象中所有元素必须为相同类型。 (
)
)
159.已知 x 为非空列表,那么执行语句 x[0] = 3 之后,列表对象 x 的内存地址不变。 (
)
160.集合可以作为列表的元素。 (
)
161.列表对象的 pop()方法默认删除并返回最后一个元素,如果列表已空则抛出异常。 (
)
162.已知列表 x = [1, 2, 3, 4],那么表达式 x.find(5)的值应为-1。 (
)
163.列表对象的排序方法 sort()只能按元素从小到大排列,不支持别的排序方式。 (
)
164.已知 x 和 y 是两个等长的整数列表,那么表达式 sum((i*j for i, j in zip(x, y)))的作用是计算
这两个列表所表示的向量的内积。 (
)
165.已知 x 和 y 是两个等长的整数列表,那么表达式[i+j for i,j in zip(x,y)]的作用时计算这两个列
表所表示的向量的和。 (
)
166.已知 x = list(range(20)),那么语句 del x[::2]可以正常执行。 (
)
167.已知 x = list(range(20)),那么语句 x[::2] = []可以正常执行。 (
)
168.已知 x = list(range(20)),那么语句 print(x[100:200])无法正常执行。 (
)
169.已知 x 是个列表对象,那么执行语句 y = x 之后,对 y 所做的任何操作都会同样作用到 x 上。 (
)
5
170.已知 x 是个列表对象,那么执行语句 y = x[:]之后,对 y 所做的任何操作都会同样作用到 x 上。 (
171.已知 x 是一个列表,那么 x = x[3:] + x[:3]可以实现把列表 x 中的所有元素循环左移 3 位。 (
)
)
172.元组可以作为字典的“键”。 (
)
173.生成器推导式比列表推导式具有更高的效率,推荐使用。 (
)
174.元组是不可变的,不支持列表对象的 insert()、remove()等方法,也不支持 del 命令删除其中的元
素,但可以使用 del 命令删除整个元组对象。 (
)
175.元组的访问速度比列表要快一些,如果定义了一系列常量值,并且主要用途仅仅是对其进行遍历而
不需要进行任何修改,建议使用元组而不使用列表。 (
)
176.创建只包含一个元素的元组时,必须在元素后面加一个逗号,例如(3,)。 (
)
177.集合可以作为元组的元素。 (
178.Python 元组支持双向索引。 (
)
)
179.已知 x = (1, 2, 3, 4),那么执行 x[0] = 5 之后,x 的值为(5, 2, 3, 4)。 (
)
180.表达式(i**2 for i in range(100))的结果是个元组。 (
)
181.在 Python 中元组的值是不可变的,因此,已知 x = ([1], [2]),那么语句 x[0].append(3)是无法
正常执行的。 (
)
182.Python 支持使用字典的“键”作为下标来访问字典中的值。 (
)
183.字典的“键”必须是不可变的。 (
)
184.Python 字典中的“键”不允许重复。 (
185.Python 字典中的“值”不允许重复。 (
186.Python 字典中的“键”可以是列表。 (
187.Python 字典中的“键”可以是元组。 (
)
)
)
)
188.当以指定“键”为下标给字典对象赋值时,若该“键”存在则表示修改该“键”对应的“值”,若不
存在则表示为字典对象添加一个新的“键-值对”。 (
)
189.集合可以作为字典的键。 (
190.集合可以作为字典的值。 (
)
)
191.Python 字典支持双向索引。 (
)
192.Python 内置的字典 dict 中元素是按添加的顺序依次进行存储的。 (
)
193.已知 x = {1:1, 2:2},那么语句 x[3] =3 无法正常执行。 (
)
194.Python 内 置 字 典 是 无 序 的 , 如 果 需 要 一 个 可 以 记 住 元 素 插 入 顺 序 的 字 典 , 可 以 使 用
collections.OrderedDict。 (
)
195.Python 集合中的元素不允许重复。 (
196.Python 集合可以包含相同的元素。 (
197.Python 集合中的元素可以是元组。 (
198.Python 集合中的元素可以是列表。 (
)
)
)
)
199.已知 A 和 B 是两个集合,并且表达式 AB 的值一定为 True。 (
)
200.无法删除集合中指定位置的元素,只能删除特定值的元素。 (
)
201.Python 集合不支持使用下标访问其中的元素。 (
)
202.运算符“-”可以用于集合的差集运算。 (
)
203.列表可以作为集合的元素。 (
204.元组可以作为集合的元素。 (
205.字典可以作为集合的元素。 (
)
)
)
206.可以使用 del 删除集合中的部分元素。 (
)
207.表达式 {1, 2} * 2 的值为 {1, 2, 1, 2}。 (
)
208.Python 集合支持双向索引。 (
)
209.成员测试运算符 in 作用于集合时比作用于列表快得多。 (
)
6
210.Python 内置的集合 set 中元素顺序是按元素的哈希值进行存储的,并不是按先后顺序。 (
)
211.栈和队列的都具有先入后出的特点。 (
)
212.扩展库 os 中的方法 remove()可以删除带有只读属性的文件。 (
)
213.使用内置函数 open()且以“w”模式打开的文件,文件指针默认指向文件尾。 (
)
214.使用内置函数 open()打开文件时,只要文件路径正确就总是可以正确打开的。 (
)
215.使用 print()函数无法将信息写入文件。 (
)
216.对文件进行读写操作之后必须显式关闭文件以确保所有内容都得到保存。 (
)
217.Python 标准库 os 中的方法 startfile()可以启动任何已关联应用程序的文件,并自动调用关联的程
序。 (
)
218.二进制文件不能使用记事本程序打开。 (
)
219.使用普通文本编辑器软件也可以正常查看二进制文件的内容。 (
)
220.二进制文件也可以使用记事本或其他文本编辑器打开,但是一般来说无法正常查看其中的内容。
(
)
221.文件对象是可以迭代的。 (
)
222.文件对象的 tell()方法用来返回文件指针的当前位置。 (
)
223.以写模式打开的文件无法进读操作。 (
)
224.以读模式打开文件时,文件指针指向文件开始处。 (
)
225.以追加模式打开文件时,文件指针指向文件尾。 (
)
226.二进制文件也可以使用记事本程序打开,只是无法正确阅读和理解其中的内容。 (
)
227.文本文件是可以迭代的,可以使用 for line in fp 类似的语句遍历文件对象 fp 中的每一行。 (
)
228.Python 的主程序文件 python.exe 属于二进制文件。 (
)
229.使用记事本程序也可以打开二进制文件,只不过无法正确识别其中的内容。 (
)
230.使用 pickle 进行序列化得到的二进制文件使用 struct 也可以正确地进行反序列化。 (
)
231.已知当前文件夹中有一个文件 readme.txt 具有只读属性,假设标准库 os 已正确导入,那么可以通
过语句 os.chmod('readme.txt', 0o777)来删除该文件的只读属性。 (
232.Python 标准库 os 的函数 remove()不能删除具有只读属性的文件。 (
233.pip 命令也支持扩展名为.whl 的文件直接安装 Python 扩展库。 (
)
)
)
234.一般来说,Python 扩展库没有通用于所有版本 Python 的,安装时应选择与已安装 Python 的版本对
应的扩展库。 (
)
235.安装 Python 扩展库时只能使用 pip 工具在线安装,如果安装不成功就没有别的办法了。 (
)
236.Python 中一切内容都可以称为对象。 (
)
237.任何包含__call__()方法的类的对象都是可调用的。 (
)
238.在 Python 中函数和类都属于可调用对象。 (
)
239.正则表达式模块 re 的 match()方法是从字符串的开始匹配特定模式,而 search()方法是在整个字符
串中寻找模式,这两个方法如果匹配成功则返回 match 对象,匹配失败则返回空值 None。 (
)
240.正则表达式对象的 match()方法可以在字符串的指定位置开始进行指定模式的匹配。 (
)
241.使用正则表达式对字符串进行分割时,可以指定多个分隔符,而字符串对象的 split()方法无法做到
这一点。 (
)
242.正则表达式元字符“^”一般用来表示从字符串开始处进行匹配,用在一对方括号中的时候则表示反
向匹配,不匹配方括号中的字符。 (
)
243.正则表达式元字符“\s”用来匹配任意空白字符。 (
)
244.正则表达式 元字符“\d”用来匹配任意数字字符。 (
)
245.假设 re 模块已成功导入,并且有 pattern = re.compile('^' + '\.'.join([r'\d{1,3}' for i in
range(4)])+'$'),那么表达式 pattern.match('192.168.1.103') 的值为 None。 (
)
246.正则表达式'^http'只能匹配所有以'http'开头的字符串。 (
)
7
247.正则表达式'^\d{18}|\d{15}$'只能检查给定字符串是否为 18 位或 15 位数字字符,并不能保证一定
是合法的身份证号。 (
)
248.正则表达式'[^abc]'可以一个匹配任意除'a'、'b'、'c'之外的字符。 (
)
249.正则表达式'python|perl'或'p(ython|erl)'都可以匹配'python'或'perl'。 (
)
250.在面向对象程序设计中,函数和方法是完全一样的,都必须为所有参数进行传值。 (
)
251.定义类时所有实例方法的第一个参数用来表示对象本身,在类的外部通过对象名来调用实例方法时
不需要为该参数传值。 (
)
242.Python 中没有严格意义上的私有成员。 (
)
253.对于 Python 类中的私有成员,可以通过“对象名._类名__私有成员名”的方式来访问。 (
)
254.如果定义类时没有编写析构函数,Python 将提供一个默认的析构函数进行必要的资源清理工作。
(
)
255.定义类时如果实现了__contains__()方法,该类对象即可支持成员测试运算 in。 (
)
256.定义类时如果实现了__len__()方法,该类对象即可支持内置函数 len()。 (
)
257.定义类时实现了__eq__()方法,该类对象即可支持运算符==。 (
)
258.定义类时实现了__pow__()方法,该类对象即可支持运算符**。 (
)
259.在 Python 中定义类时,如果某个成员名称前有 2 个下划线则表示是私有成员。 (
)
260.在类定义的外部没有任何办法可以访问对象的私有成员。 (
)
261.Python 类的构造函数是__init__()。 (
)
262.定义类时,在一个方法前面使用@classmethod 进行修饰,则该方法属于类方法。 (
)
263.定义类时,在一个方法前面使用@staticmethod 进行休息,则该方法属于静态方法。 (
)
264.在 Python 中可以为自定义类的对象动态增加新成员。 (
)
265.只可以动态为对象增加数据成员,而不能为对象动态增加成员方法。 (
)
266.如果在设计一个类时实现类__len__()方法,那么该类的对象会自动支持 Python 内置函数 len()。
(
)
267.在 Python 中定义类时实例方法的第一个参数名称必须是 self。 (
)
268.在 Python 中定义类时实例方法的第一个参数名称不管是什么,都表示对象自身。 (
)
269.通过对象不能调用类方法和静态方法。 (
)
270.属性可以像数据成员一样进行访问,但赋值时具有方法的优点,可以对新值进行检查。 (
)
271.在 Python 中定义类时,运算符重载是通过重写特殊方法实现的。例如,在类中实现了__mul__()方
法即可支持该类对象的**运算符。 (
)
272.在派生类中可以通过“基类名.方法名()”的方式来调用基类中的方法。 (
)
273.Python 支持多继承,如果父类中有相同的方法名,而在子类中调用时没有指定父类名,则 Python
解释器将从左向右按顺序进行搜索。 (
)
274.Python 类不支持多继承。 (
)
275.在设计派生类时,基类的私有成员默认是不会继承的。 (
)
276.Python 标准库 os 中的方法 startfile()可以用来打开外部程序或文件,系统会自动关联相应的程序
来打开或执行指定的文件。 (
)
277.Python 标准库 os 中的方法 isfile()可以用来测试给定的路径是否为文件。 (
)
278.Python 标准库 os 中的方法 exists()可以用来测试给定路径的文件是否存在。 (
)
279.Python 标准库 os 中的方法 isdir()可以用来测试给定的路径是否为文件夹。 (
)
280.Python 标准库 os 中的方法 listdir()返回包含指定路径中所有文件和文件夹名称的列表。 (
)
281.Python 扩展库 xlwt 支持对 Excel 2003 或更低版本的 Excel 文件进行写操作。 (
282.Python 扩展库 xlrd 支持对 Excel 2003 或更低版本的 Excel 文件进行读操作。 (
)
)
283.标准库 os 的 rename()方法可以实现文件移动操作。 (
)
284.标准库 os 的 listdir()方法默认只能列出指定文件夹中当前层级的文件和文件夹列表,而不能列出
8