Python 800 道习题 (°ー°〃) 测试你学废了嘛

前言

嗨喽~大家好呀,这里是魔王呐 !

在我们大家学习Python到一定阶段的时候~

就会想检测一下自己是否学废了 不然出去装逼出错多尴尬吖~

Python 800 道习题 (°ー°〃) 测试你学废了嘛_第1张图片

那么博主这里为大家准备了一套试题,供大家参考!

检验学习成果的时间到了!!

Python 800 道习题 (°ー°〃) 测试你学废了嘛_第2张图片

一、填空题

001 Python安装扩展库常用的工具是__________和conda,其中后者需要安装Python集成开发环境Anaconda3之后才可以使用,而前者是Python官方推荐 和标配的;
002 Python程序文件扩展名主要有__________和__________两种,其中后者常用于GUI程序;
003 Python源代码程序伪编译后的文件扩展名为__________;
004 使用pip工具在线安装Excel文件操作扩展库openpyxl的完整命令是__________;
005 使用pip工具在线升级科学计算扩展库numpy的完整命令是__________;
006 使用pip工具把本机已安装的Python扩展库及版本信息输出到文本文件requirements.txt中的完整命令是__________;
007 使用pip工具查看当前已安装的Python扩展库(不含版本号)的完整命令是__________;
008 表达式int(‘11111’, 2)的值为__________;
009 表达式chr(ord(‘D’)+2)的值为__________;
010 运算符%__________(可以/不可以)对浮点数进行求余数操作;
011 一个数字5__________(是/不是)合法的Python表达式;
012 在Python中关键字__________表示空类型;
013 列表、元组、字符串是Python的__________(有序、无序?)序列;
014 查看变量类型的Python内置函数是__________;
015 查看对象内存地址的Python内置函数是__________;
016 以3为实部4为虚部,Python复数的表达形式为__________或__________;
017 Python运算符中用来计算整商的是__________;
018 Python运算符中用来计算集合并集的是__________;
019 Python运算符中用来计算集合差集的是__________;
020 Python运算符中用来计算集合交集的是__________;
021 使用运算符测试集合A是否为集合B的真子集的表达式可以写作__________;
022 __________命令既可以删除列表中的一个元素,也可以删除整个列表或其他任意类型的Python对象;
023 表达式int(‘123’, 16)的值为__________;
024 表达式int(‘123’, 8)的值为__________;
025 表达式int(‘123’)的值为__________;
026 表达式int(‘101’,2)的值为__________;
027 表达式abs(-3)的值为__________;
028 Python 3.x语句print(1, 2, 3, sep=‘:’)的输出结果为__________;
029 Python 3.x语句print(1, 2, 3, sep=‘,’)的输出结果为__________;
030 表达式int(4**0.5)的值为__________;
031 表达式8 ** (1/3)的值为__________;
032 Python内置函数__________可以返回列表、元组、字典、集合、字符串以及range对象中元素个数;
033 Python内置函数__________用来返回序列中的最大元素;
034 Python内置函数__________用来返回序列中的最小元素;
035 Python内置函数__________用来返回数值型序列中所有元素之和;
036 已知x = 3,那么执行语句x += 6之后,x的值为__________;
037 表达式13 / 4的值为__________;
038 表达式13 // 4的值为__________;
039 表达式-13 // 4的值为__________;
040 表达式3 ** 2的值为__________;
041 表达式chr(ord(‘a’)-32) 的值为__________;
042 表达式abs(3+4j) 的值为__________;
043 表达式16 ** 0.5的值为__________;
044 表达式type({3})的值为__________;
045 表达式type({3:3})的值为__________;
046 表达式isinstance(‘Hello world’, str)的值为__________;
047 表达式isinstance(‘abc’, int)的值为__________;
048 表达式isinstance(4j, (int, float, complex))的值为__________;
049 表达式isinstance(‘4’, (int, float, complex))的值为__________;
050 表达式type(3) in (int, float, complex)的值为__________;
051 表达式type(‘3’) in (int, float, complex)的值为__________;
052 表达式type(3) == int的值为__________;
053 Python 3.x的range()函数返回一个_____________;
054 表达式“[3] in [1, 2, 3, 4]”的值为___________;
055 列表对象的sort()方法用来对列表元素进行原地排序,该函数返回值为________;
056 列表对象的___________方法删除首次出现的指定元素,如果列表中不存在要删除的元素,则抛出异常;
057 假设列表对象aList的值为[3, 4, 5, 6, 7, 9, 11, 13, 15, 17],那么切片aList[3:7]得到的值是_____________________;
058 在Python中,字典和集合都是用一对____________作为界定符,字典的每个元素有两部分组成,即________和__________,其中________不允许重复;
059 使用字典对象的__________方法可以返回字典的“键-值对”,使用字典对象的_____________方法可以返回字典的“键”,使用字典对象的__________方法可以返回字典的“值”;
060 假设有列表a = [‘name’, ‘age’, ‘sex’]和b = [‘Dong’, 38, ‘Male’],请使用一个语句将这两个列表的内容转换为字典,并且以列表a中的元素为“键”,以列表b中的元素为“值”,这个语句可以写为_____________________;
061 假设有一个列表a,现要求从列表a中每3个元素取1个,并且将取到的元素组成新的列表b,可以使用语句____________;
062 使用列表推导式生成包含10个数字5的列表,语句可以写为__________________;
063 ___________(可以、不可以)使用del命令来删除元组中的部分元素;
064 表达式[1, 2, 3]*3的值为______________________;
065 表达式list(map(str, [1, 2, 3]))的值为__________;
066 语句x = 3==3, 5执行结束后,变量x的值为__________;
067 已知x = 3,并且id(x)的返回值为496103280,那么执行语句x += 6之后,表达式id(x) == 496103280的值为__________;
068 已知x = 3,那么执行语句x *= 6之后,x的值为__________;
069 表达式3 in [1, 2, 3, 4]的值为__________;
070 使用列表与整数的乘法生成包含10个数字5的列表,可以写为__________;
071 任意长度的非空列表、元组和字符串中最后一个元素的下标为__________;
072 表达式list(range(1, 10, 3))的值为__________;
073 表达式list(range(10, 1, -3))的值为__________;
074 表达式list(range(5))的值为________________;
075 已知a = [1, 2, 3]和b = [1, 2, 4],那么id(a[1])==id(b[1])的执行结果为__________;
076 切片操作list(range(6))[::2]执行结果为__________;
077 使用切片操作在列表对象x的开始处增加一个元素3的代码为__________;
078 语句sorted([1, 2, 3], reverse=True) == reversed([1, 2, 3])执行结果为__________;
079 表达式sorted([111, 2, 33], key=lambda x: len(str(x)))的值为________________;
080 表达式sorted([111, 2, 33], key=lambda x: -len(str(x)))的值为__________;
081 表达式max([111, 22, 3], key=str)的值为__________;
082 语句x = (3,)执行后x的值为__________;
083 语句x = (3)执行后x的值为__________;
084 已知x=3和y=5,执行语句 x, y = y, x 后x的值是__________;
085 可以使用内置函数__________查看包含当前作用域内所有全局变量和值的字典;
086 可以使用内置函数__________查看包含当前作用域内所有局部变量和值的字典;
087 字典中多个元素之间使用__________分隔开,每个元素的“键”与“值”之间使用__________分隔开;
088 字典对象的_________方法可以获取指定“键”对应的“值”,并且可以在指定“键”不存在的时候返回指定值,如果不指定则返回 None;
089 表达式{1:‘a’ , 2:'b, 3:'c"}.get(4, ‘d’)的值为_________;
090 已知x={1:2},那么执行语句x[2] =3之后,x的值为_________;
091 表达式 {1,2,3,4}- {3,4,5,6} 的值为_________;
092 表达式 set([1,1,2,3])的值为_________;
093 使用列表推导式得到100以内所有能被13整除的整数的代码可以写作_________;
094 已知x=[3, 5,7],那么表达式x[10:]的值为_________;
095 已知x= [3,5,7],那么执行语句x[len(x):]=[1,2]之后,x的值为_________;
096 已知x=[3,7,5],那么执行语句x.sort(reverse=True)之后,x的值为_________;
097 已知x=[3,7,5],那么执行语句x=x.sort(reverse=True)之后,x的值为_________;
098 已知x=[1,11, 111],那么执行语句x.sort(key=lambda x: len(str(x)),reverse=True)之后,x的值为_________;
099 表达式 list(zip([1,2], [3,4]))的值为_________;
100 已知x =[1,2,3,2,3],执行语句x.pop()之后,x的值为_________;
101 已知x =[1,2,3,2,3],执行语句x.pop(0)之后,x的值为_________;
102 表达式 list(map(list, zip(*[[1,2,3], [4,5,6]])))的值为_________;
103 表达式[x for x in [1,2,3,4,5] if x<3]的值为_________;
104 表达式[x for x in[1,2,3,4,5] if x%2==1]的值为_________;
105 表达式[index for index,value in enumerate([3,5,7,3,7]) if value == max([3,5,7,3,7])]的值为_________;
106 已知x= [3,5,3,7],那么表达式[x.index(i) for i in x if i==3]的值为_________;
107 已知列表x=[1, 2],那么表达式list(enumerate(x))的值为_________;
108 已知vec =[[1,2],[3,4]],则表达式[col for row in vec for col in row]的值为_________;
109 已知 vec =[[1,2],[3.4]],则表达式[[row[i] for row in vec] for i in range(len(vec[0]))]的值为_________;
110 已知 x= list(range(10)),则表达式 x[-4:] 的值为_________;
111 已知 x= [3,5,7],那么执行语句 x[1:]=[2] 之后,x的值为_________;
112 已知 x= [3,5,7],那么执行语句 x[:3]=[2] 之后,x的值为_________;
113 已知 x 为非空列表,那么执行语句 y=x[:] 之后,id(x[0])== id(y[0])的值为_________;
114 已知 x=[1,2,3,2,3],执行语句x.remove(2)之后,x的值为_________;
115 表达式 len([ i+5 for i in range(10)])的值为_________;
116 表达式 len(range(1,10))的值为_________;
117 表达式 range(10)[-1]的值为_________;
118 表达式 range(10, 20)[4]的值为_________;
119 表达式 round(3.4)的值为_________;
120 表达式 round(3.7)的值为_________;
121 已知 x=(3),那么表达式x*3的值为_________;
122 已知 x= (3,),那么表达式×*3的值为_________;
123 假设列表对象 x=[1, 1,1],那么表达式 id(x[0])== id(x[2])的值为_________;
124 已知列表 x=list(range(10)),那么执行语句 delx[::2]之后,x的值为_________;
125 已知列表 x=[1,2,3,4],那么执行语句 delx[1]之后x的值为_________;
126 表达式[1,2]*2的值为_________;
127 已知列表x=[1,2,3],那么执行语句x.insert(1,4)之后,x的值为_________;
128 已知列表 x=[1,2,3],那么执行语句x.insert(0,4)之后,x的值为_____________;
129 已知 x= [[1]]*3,那么执行语句 x[0][0]=5 之后,变量x的值为_____________;
130 已知x=[1,2,3],那么执行语句 x[len(x)-1:]=[4,5,6] 之后,变量x的值为_____________;
131 已知x是一个列表对象,那么执行语句y=x[:]之后,表达式 id(x) == id(y)的值为____________;
132 表达式 sorted([13,1,237, 89,100], key=lambda x: len(str(x)))的值为_____________;
133 已知 x={1:2,2:3},那么表达式x.get(3,4)的值为_____________;
134 已知 x={1:2,2:3},那么表达式x.get(2,4)的值为_____________;
135 表达式 {1,2,3} I {3,4, 5} 的值为_____________;
136 表达式{1,2,3}&{3,4, 5}的值为_____________;
137 表达式{1,2, 3}-{3,4,5}的值为_____________;
138 表达式{1,2,3}<{3, 4,5}的值为_____________;
139 表达式{1,2,3}<{1, 2,4}的值为_____________;
140 表达式[1,2,3].count(4)的值为_____________;
141 Python标准库random中_____________函数的作用是从序列中随机选择1个元素;
142 Python标准库random 中 sample(seq, k)函数从序列中选择_____________(重复、不重复?)的k 个元素;
143 random模块中_____________函数的作用是将列表中的元素随机乱序;
144 执行代码x, y,z = sorted([1,3,2]之后,变量 y 的值为_____________;
145 表达式(1,2,3)+(4, 5)的值为_____________;
146 表达式 dict(zip([1, 2],[3, 4]))的值为_____________;
147 语句x,y,z=[1,2,3]执行后,变量y的值为_____________;
148 已知x={1,2,3},那么执行语句x.add(3)之后,x的值为_____________;
149 已知x={1:1},那么执行语句x[2]=4之后,len(x)的值为_____________;
150 已知x={1:1, 2:2},那么执行语句x[2]=4之后,len(x)的值为_____________;
151 已知列表×=[1,2],那么连续执行命令y=x和y.append(3)之后,x的值为_____________;
152 已知列表x=[1,2],那么连续执行命令y=xE]和y.append(3)之后,x的值为_____________;
153 已知列表x=[1,2],执行语句y =x[]后,表达式 id(x) == id(y)的值为_____________;
154 已知列表×=[1,2],执行语句y=x后,表达式 id(x) == id(y)的值为_____________;
155 已知列表×=[1,2],执行语句y=x后,表达式xisy的值为_____________;
156 已知列表x=[1, 2],执行语句y=x[:]后,表达式 x is not y的值为_____________;
157 表达式 [i for i in range(10) if i>8]的值为_____________;
158 已知 x=[[1,2,3],[4,5,6]],那么表达式[[row[i] for row in x] for i in range(len(x[0]))]的值为_____________;
159 执行语句 x, y,z = map(str,range(3))之后,变量y的值为_____________;
160 已知列表 x=[1,2],那么执行语句 x.extend([3]) 之后,x的值为_____________;
161 已知列表 x=[1,2],那么执行语句 x.append([3]) 之后,x的值为_____________;
162 执行语句 x,y,z = '123’之后,y的值为_____________
163 表达式 print(0b10101) 的值为_____________
164 已知 x=[1,2,3,4,5],那么执行语句 del x[:3]之后,x的值为_____________
165 已知 x = range(1,4) 和 y = range(4,7),那么表达式 sum([i*j for i,j in zip(x,y)])的值为_____________
166 表达式 [5 for i in range(3)] 的值为_____________
167 表达式 {1,2,3}=={1,3,2}的值为_____________;
168 表达式[1,2,3] == [1,3,2]的值为___________;
169 已知 x= [1,2,1],那么表达式id(x[0]) == id(x[2])的值为___________;
170 表达式 3 not in [1,2,3]的值为___________;
171 已知 x=[1, 2],那么执行语句 x[0:0]= [3,3]之后,x的值为___________;
172 已知x=[1, 2],那么执行语句x[0:1]=[3,3]之后,x的值为___________;
173 已知x= [1,2,3,4,5],那么执行语句delx[1:3]之后,x的值为___________;
174 已知x= [[1,2,3],[4,5,6]],那么表达式sum([i*jfor i,j in zip(*x)])的值为___________;
175 已知列表 x= [1,2,3] 和 y=[4,5,6],那么表达式[(i,j) for i, j in zip(x,y) if i==3]的值为___________;
176 已知列表 x=[1.0,2.0,3.0],那么表达式sum(x)/len(x)的值为___________;
177 已知 x={1:2,2:3,3:4},那么表达式sum(x)的值为___________;
178 已知 x={1:2,2:3,3:4},那么表达式sum(x.values())的值为___________;
179 已知 x= [3,2,3,3,4],那么表达式[index for index, value in enumerate(x) if value==3]的值为___________;
180 表达式1234%1000//100的值为___________;
181 表达式3//5的值为___________;
182 表达式[1,2]+[3]的值为___________;
183 表达式(1,)+(2,)的值为___________;
184 表达式(1)+(2)的值为___________;
185 已知 x,y = map(int, [‘1’, ‘2’]),那么表达式x+y的值为___________;
186 已知 x, y = map(str, range(1,3)),那么表达式x+y的值为___________;
187 已知列表 x= list(range(5)),那么执行语句x.remove(3)之后,表达式 x.index(4)的值为___________;
188 已知列表 x= [1,3,2],那么执行语句x.reverse()之后,x的值为___________;
189 已知列表 x= [1,3,2],那么执行语句x=x.reverse()之后,x的值为___________;
190 已知x为非空列表,那么表达式x.reverse() == list(reversed(x))的值为___________;
191 已知x为非空列表,那么表达式x.sort() == sorted(x)的值为___________;
192 已知列表x= [1,3,2],那么执行语句y= list(reversed(x))之后,x的值为___________;
193 已知列表x= [1,3,2],那么执行语句y= list(reversed(x))之后,y的值为___________;
194 已知列表x中包含超过5个以上的元素,那么表达式x==x[:5]+x[5:]的值为___________;
195 已知列表x=[1,3,2],那么表达式[value for index, value in enumerate(x) if index==-2]的值为___________;
196 已知列表x=[1,3,2],那么执行语句a, b, c = sorted(x)之后,b的值为___________;
197 已知列表x=[1,3,2],那么执行语句a, b, c = map(str, sorted(x))之后,c的值为___________;
198 表达式 set([1,2,3])=={1,2,3}的值为_________;
199 表达式 set([1,2,2,3])=={1,2,3}的值为_________;
200 表达式 ‘%c’%65 == str(65)的值为_________;
201 表达式 ‘%s’%65 == str(65)的值为_________;
202 表达式 chr(ord(‘b’)^32)的值为_________;
203 表达式 ‘abc’ in 'abdcefg’的值为_________;
204 已知 x= ‘abcd’ 和 y = ‘abcde’,那么表达式[ i==j for i,j in zip(x,v)]的值为_________;
205 已知 x = list(range(20)),那么表达式x[-1]的值为_________;
206 已知 x=3+4j和y= 5+6j,那么表达式xt+y的值为_________;
207 表达式 int(‘11’, 2)的值为_________;
208 表达式 chr(ord(‘A’)+1)的值为_________;
209 表达式 int(str(34))== 34的值为_________;
210 表达式 list(str([3,4]))== [3,4]的值为_________;
211 表达式 15//4的值为_________;
212 表达式 sorted({‘a’:3, ‘b’:9, 'c:78})的值为_________;
213 表达式 sorted(t’a’:3, ‘b’:9, 'c:78}.values())的值为_________;
214 已知×=[3,2,4,1],那么执行语句x= x.sort()之后,x的值为_________;
215 已知x = list(range(20)),那么语句 print(x[100:200])的输出结果为_________;
216 已知x = list(range(20)),那么执行语句 x[:18]=[ ]后列表x的值为_________;
217 已知x = ([1], [2]),那么执行语句 x[0].append(3)后x的值为_________;
218 已知x = {1:1,2:2],那么执行语句 x.update([2:3,3:3])之后,表达式sorted(x.items())的值为_________;
219 已知x = {1:1,2:2},那么执行语句 x[3]=3之后,表达式sorted(x.items())的值为_________;
220 已知x = [1,2,3],那么表达式 not (set(x* 100)-set(x))的值为_________;
221 表达式[1,2,3]>[1,3,2]的值为_________;
222 已知x=[1,2,3],那么表达式set(x*100)== set(x)的值为_________;
223 已知x= [1,2,3,4,5],那么执行语句x[::2] = range(3)之后,x的值为_________;
224 已知x=[1,2,3,4,5],那么执行语句x[1::2] = sorted(x[1::2], reverse=True)之后,x的值为_________;
225 表达式type())== dict的值为_________;
226 表达式type(l) == set的值为_________;
227 Python提供了两种基本的循环结构_______和_______ ;
228 表达式 ‘ab’ in ‘acbed’ 的值为________;
229 关键字________用于测试一个对象是否是一个可迭代对象的元素;
230 表达式 3<5>2 的值为________;
231 已知 x = {‘a’:‘b’, ‘c’:‘d’},那么表达式’a’ in x的值为________;
232 已知 x = {‘a’:‘b’, ‘c’:‘d’},那么表达式’b’ in x的值为________
233 已知 x = (‘a’:‘b’, ‘c’:‘d’},那么表达式’b’ in x.values()的值为________;
234 表达式1<2<3的值为________;
235 表达式3 or 5的值为________;
236 表达式0 or 5的值为________;
237 表达式3 and 5的值为________;
238 表达式3 and not 5的值为________;
239 Python中用于表示逻辑与、逻辑或、逻辑非运算的关键字分别是________、、;
240 Python 3.x 语句 for i in range(3):print(i, end=‘,’)的输出结果为________;
241 Python 3.x语句print(1, 2,3, sep=';")的输出结果为________;
242 对于带有 else 子句的 for 循环和 while 循环,当循环因循环条件不成立而自然结束时________(会、不会?)执行else中的代码;
243 在循环语句中,________语句的作用是提前结束本层循环;
244 在循环语句中,________语句的作用是提前进入下一次循环;
245 表达式 5 if 5>6 else (6 if 3>2 else 5)的值为________;
246 Python关键字 elif 表示________和________两个单词的缩写;
247 表达式 3 in {1,2,3} 的值为________;
248 表达式 ‘ac’ in ‘abce’ 的值为________;
249 表达式 not 3 的值为________;
250 Python 3.x 语句 for i in range(3):print(i, end=‘,’) 的输出结果为_________;
251 Python 3.x 语句 print(1,2,3, sep=‘,’)的输出结果为_________;
252 对于带有 else 子句的 for 循环和 while 循环,当循环因循环条件不成立而自然结束时_________(会、不会?)执行else中的代码;
253 在循环语句中,_________语句的作用是提前结束本层循环;
254 在循环语句中,_________语句的作用是提前进入下一次循环;
256 表达式 5 if 5>6 else (6if 3>2 else 5) 的值为_________;
257 Python 关键字elif表示_________和________两个单词的缩写;
258 表达式 3 in {1,2,3}的值为_________;
259 表达式 ‘ac’ in ‘abce’ 的值为_________;
260 表达式 not 3 的值为_________;
261 Python中定义函数的关键字是___________;
262 已知有函数定义 def demo(*p):return sum§,那么表达式 demo(1, 2, 3)的值为___________、表达式demo(1,2,3,4)的值为___________;
263 在函数内部可以通过关键字___________来定义全局变量,也可以用来声明使用已有的全局变量;
264 表达式 list(map(lambda x: x+5,[1, 2,3,4,5])) 的值为___________;
265 表达式 sum(range(10))的值为___________;
266 表达式 sum(range(1, 10,2))的值为___________;
267 表达式 list(filter(None, [0,1,2,3,0,0]))的值为___________;
268 表达式 list(filter(lambda x:x>2,[0,1,2,3,0,O]))的值为___________;
269 表达式 list(range(50,60,3))的值为___________;
270 表达式 list(filter(lambda x: x%62==0, range(10))) 的值为___________;
271 已知 x = [[1,3.3],[2,3,1],那么表达式 sorted(x,key=lambda item:item[0]+item[2])的值为__________;
272 已知 x = [[1,3,3],[2,3,1]],那么表达式 sorted(x,key=lambda item:(item[1], item[2]))的值为__________;
273 已知 x = [[1,3.3],[2,3,1]],那么表达式 sorted(x,key=lambda item:(item[1],-item[2]))的值为__________;
274 表达式 list(filter(lambda x: len(x)>3, [‘a’, ‘b’, ‘abcd’]))的值为__________;
275 表达式 list(filter(lambda x: x%2==1, range(10)))的值为__________;
276 表达式 list(filter(lambda x: x.isupper(). [‘a’ , ‘B’, ‘aB’]))的值为__________;
277 已知 g = lambda x, y=3, z=5:xyz,则语句print(g(1))的输出结果为__________;
278 已知 g = lambda x, y=3,z=5: xyz,则语句print(g(1,2))的输出结果为__________;
279 已知 g = lambda x, y=3,z=5:xyz,则语句print(g(1,z=2))的输出结果为__________;
280 表达式 list(map(lambda x: len(x), [‘a’, ‘bb’, ‘ccc’]))的值为__________;
281 已知 f= lambda x: x+5,那么表达式f(3)的值为__________;
282 表达式 sorted([‘abc’, ‘acd’ , ‘ade’], key=lambda x:(x[0],×[2]))的值为__________;
283 已知函数定义 def demo(x,y, op);return eval(str(x)+op+str(y)),那么表达式 demo(3,5,‘+’)的值为__________;
284 已知函数定义 def demo(x,y, op):return eval(str(x)+op+str(y)),那么表达式 demo(3,5,‘*’)的值为__________;
285 已知函数定义 def demo(x,y, op):return eval(str(x)+op+str(y)),那么表达式 demo(3,5,‘-’)的值为__________;
286 已知 g = lambda x, y=3,z=5:x+y+z,那么表达式g(2)的值为__________;
287 假设已从标准库 functools 导入 reduce() 函数,那么表达式 reduce(lambda x, y:x-y,[1,2,3]) 的值为__________;
288 假设已从标准库 functools 导入 reduce() 函数,那么表达式 reduce(lambda x, y:x+y,[1,2,3]) 的值为__________;
289 假设已从标准库 functools 导入 reduce() 函数,那么表达式 reduce(lambda x, y:x*y,[1,2,3]) 的值为__________;
290 表达式 list(filter(lambda x: x>5, range(10)))的值为__________;
291 假设已从标准库 functools导入reduce()函数,那么表达式 reduce(lambda x,ymax(xy),[1,2,3,4,4,5])的值为__________;
292 已知函数定义def func(**p):return sum(p.values()),那么表达式 func(x=1, y=2 z=3)的值为__________;
293 已知函数定义def func(**p):return ".join(sorted§),那么表达式 func(x=1, y=2, z=3)的值为__________;
294 己f= lambda x: 5,那么表达式f(3)的值为__________;
295 已知f= lambda :8,那么表达式f()的值为__________;
296 依次执行语句x= 3, def modify():x=5,和modify()之后,x的值为__________;
297 面向对象程序设计的三要素分别为__________、和;
298 简单解释Python中以下划线开头的变量名的含义;
299 与运算符**对应的特殊方法名为__________,与运算符//对应的特殊方法名为__________;
300 假设a为类A的对象且包含一个私有数据成员__value,那么在类的外部通过对象 a 直接将其私有数据成员__value 的值设置为 3 的语句可以写作_______;
301 私有成员在类的外部__________(能、不能?)直接访间;
302 Python使用__________关键字来定义类;
303 定义类时,如果某个成员以两个下划线开头但不以两个下划线结束,则表示该成员为__________(私有成员、公有成员?);
304 定义类时,__________(必须、不必须?)指定基类;
305 一般建议使用___________作为对象成员方法的第一个参数名字;
306 定义类时,如果在某个成员方法的定义之前加上修饰器@property,则表示这是一个__________;
307 在Python中,不论类的名字是什么,构造方法的名字都是__________;
308 如果在设计一个类时实现了__contains__()方法,那么该类的对象会自动支持__________运算符;
309 表达式’abc’ in (‘abcdefg’)的值为________;
310 表达式’abc’ in [‘abcdefg’]的值为________;
311 表达式’\x41’=='A’的值为________;
312 表达式".join(list(‘hello world!’))的值为________;
313 转义字符’\n’的含义是________;
314 已知列表对象×=[‘11’,‘2’,‘3’],则表达式max(x)的值为________;
315 表达式min([‘11’,‘2’,‘3’])的值为________;
316 已知列表对象×=[‘11’ ‘2’‘3’],则表达式max(x key=len)的值为________;
317 已知path = r’c:\test.html’,那么表达式path[:-4]+'htm’的值为________;
318 表达式 list(str([1,2,3])==[1,2,3]的值为________;
319 表达式str([1,2,3])的值为________;
320 表达式str((1,2,3))的值为___________;
321 表达式sum(range(1, 10,2))的值为________;
322 表达式sum(range(1, 10))的值为________;
323 表达式’%c’%65的值为________;
324 表达式’%s’%65的值为________;
325 表达式’%d%c’ % (65,65)的值为________;326**
328 表达式isinstance(‘abcdefg’str)的值为________;
329 表达式isinstance(‘abcdefg’ object)的值为________;
330 表达式isinstance(3 object)的值为________;
331 表达式’abcabcabc’ .rindex(‘abc’)的值为________;
333 表达式’:'.join(‘abcdefg’.split(‘cd’))的值为________;
334 表达式’Hello world.l like Python.'.rfind(‘python’)的值为________;
335 表达式’abcabcabc’.count(‘abc’)的值为________;
336 表达式’apple.peachbananapear’.find(‘p’)的值为________;
337 表达式’apple.peachbananapear’.find(‘ppp’)的值为________;
338 表达式’abcdefg’ .split(‘d’)的值为________;
339 表达式’:'.join(‘1,2,3,45’.split()的值为________;
340 表达式’:'.join(‘abccc\n\n\nddd’.split())的值为________;
341 已知字典x={i:str(i+3)for i in range(3)},那么表达式".join([item[1] for item in x.tems()])的值为________;
342 表达式’Hello world’.upper()的值为________;
343 表达式’Hello world’ .lower()的值为________;
344 表达式’Hello world’.lower().upper()的值为________;
345 表达式’Hello world’ .swapcase().swapcase()的值为________;
346 表达式r’c:\windowsknotepad.exe’.endswith(‘.exe’)的值为________;
347 表达式r’clwindows\notepad.exe’.endswith((‘.jpg’.exe’))的值为________;
348 表达式’C:\Windowsiinotepad.exe’.startswith(‘C:’)的值为________;
349 表达式 len('Hello world".Ijust(20))的值为________;
350 表达式len(‘abcdefg’.ljust(3))的值为_______;
351 表达式’a’+'b’的值为_______;
352 已知 x= '123’和y= ‘456’,那么表达式x+y的值为_______;
353 表达式’a’.join(‘abc’.partition(‘a’))的值为_______;
354 表达式’.join("asdssfff.split(‘sd’))的值为_______;
355 表达式".join(re.split('[sd]"‘asdssfff’))的值为_______;
356 表达式’Hello world!'[-4]的值为_______;
357 表达式’Hello world!'[-4:]的值为_______;
358 表达式"test.py’.endswith((“-py” ".pyw’)的值为_______;
359 表达式len(“abc”.ljust(20))的值为_______;
360 表达式’abc’.ljust(5 ‘=’)的值为_______;
361 当在字符串前加上小写字母_______或大写字母_______表示原始字符串,不对其中的任何字符进行转义;
362 表达式len(‘中国’.encode(‘utf-8’))的值为_______;
363 表达式len(‘中国’.encode(‘gbk’))的值为_______;
364 表达式chr(ord(‘A’)+2)的值为_______;
365 表达式’abcab’.replace(‘a’ ‘wy’)的值为_______;
366 已知 table = ‘.maketrans(‘abcw’ ,‘xyzc’),那么表达式’Hello world’.translate(table)的值为_______;
367 表达式’hello world hellow every one".replace(‘hello’, "hi’)的值为_______;
368 已知字符串x = ‘hello world’,那么执行语句x.replace(‘hello’, hi’)之后,x的值为_______;
369 已知x= ‘abcd’,那么表达式’.join(x.split())的值为_______;
370 表达式’abcab’.strip(‘ab’)的值为_______;
371 表达式[str(i) for i in range(3]的值为_______
372 表达式’abc.txt’.endswith((‘.txt’ ‘.doc’. ‘.jpg’))的值为_______;
373 代码 print(1,2,3,sep=‘:’)的执行结果为_______;
374 代码for i in range(3):print(i end=‘’)的执行结果为_______;
375 表达式eval(‘’‘import_(‘math’).sqrt(9)’‘’)的值为_______;
376 表达式eval(‘’‘import(‘math’).sqrt(32+42)’‘’)的值为_______;
377 表达式eval(‘3+5’)的值为_______;
378 表达式evalK’[1, 2,3]')的值为_______;
379 假设math标准库已导入那么表达式eval(‘math.sqrt(4)’)的值为_______;
380 已知x为非空列表,那么表达式random.choice(x) in x的值为_______;
381 表达式’abc10’.isalnum()的值为_______;
382 表达式’abc10’.isalpha()的值为_______;
383 表达式’abc10’.isdigit()的值为_______;
384 表达式’C:\lwindowslnotepad.exe’.endswith(‘.exe’)的值为_______;
385 表达式’%s '%[1,2,3]的值为_______;
386 表达式’aaasdf’.Ilstrip(‘as’)的值为_______;
387 表达式’aaasdf’.Istrip(‘af’)的值为_______;
388 表达式’aaasdf’.strip(‘af’)的值为_______;
389 表达式’aaasdf’.rstrip(‘af’)的值为_______;
390 表达式len(‘SDIBT’)的值为_______;
391 表达式’Hello world!'.count(‘l’)的值为_______;
392 已知× = ‘abcdefg’,则表达式x[3:]+x[:3]的值为_______;
393 字符串编码格式UTF8使用___个字节表示一个汉字;
394 字符串编码格式GBK使用_____个字节表示一个汉字;
395 已知字符串编码格式utf8使用3个字节表示一个汉字1个字节表示英语字母那么表达式len(‘abc你好’)的值为_______;
396 已知字符串编码格式utf8使用3个字节表示一个汉字**
397 已知字符串编码格式gbk使用2个字节表示一个汉字**
398 已知ord(‘A’)的值为65并且 hex(65)的值为’0x41’,那么表达式’\x41b’的值为_______;
399 已知 formatter = 'good {0}.format,那么表达式list(map(formatter ,[‘morning’]))的值为_______;
400 已知x = ‘hello world.’,那么表达式x.find(‘x’)和x.rfind(‘x’)的值都为_______;
401 表达式’:'.join(‘hello world.’.split()的值为_______;
402 表达式’:'.join(‘a bc d’.split(maxsplit=2))的值为_______;
403 已知x= ‘hello world’,那么表达式x.replace(‘l’, 'g")的值为_______;
404 假设已成功导入Python标准库 string,那么表达式len(string.digits)的值为_______;
405 表达式’aaaassddf;.strip( ‘af’)的值为_______;
406 表达式len(‘aaaassddf’.strip( ‘afds’))的值为_______;
407 表达式len( ‘hello world’[100:])的值为_______;
408 表达式’Beautiful is better than ugly.'.startswith(‘Be’5)的值为_______;
409 已知x = ‘aa b ccc dddd’,那么表达式’.join([v for i;v in enumerate(x[:-1]) if v==x[i+1])的值为_______;
410 表达式eval(‘*’.join(map(str range(1 ,6))))的值为_______;
411 使用pip命令在线安装扩展库numpy的完整命令是_________;
412 使用np.arange(8)生成的数组中最后一个元素的值为_________;
413 使用np.zeros((3,4))生成的数组中元素个数为_________;
414 表达式np.ones((3,4)).sum()的值为_________;
415 表达式len(np.random.randint(0, 50,5))的值为_________;
416 表达式all(np.random.rand(20000)<1)的值为_________;
417 表达式np.diag((1,2,3,4)).shape的值为_________;
418 表达式np.diag((1,2,3,4)).size的值为_________;
419 表达式np.random.randn(3).shape的值为_________;
420 表达式np.random.randn(34).shape的值为_________;
421 已知x= np.array((1,2,3,4,5)),那么表达式(x*2).sum()的值为_________;
422 已知x= np.array((1,2,3,4,5)),那么表达式(x**2).max()的值为_________;
423 已知x = np.array((1,2,3,4,5)),那么表达式(2**x).max()的值为_________;
424 已知x= np.array((1,2,3,4,5)),那么表达式(x//5).sum()的值为_________;
425 已知x= np.array((1,2,3,4, 5)),那么表达式sum(x*x)的值为_________;
426 已知x= np.array([1,2,3])和y= np.array([[13], [4],[5]]),那么表达式(×*y).sum()的值为_________;
427 已知x = np.array([3,5,1,9,6,3]),那么表达式np.argmax(x)的值为_________;
428 已知x = np.random.randint(0,100(3,5)),那么表达式np.ceil(abs(np.sin(x))).sum()的值为_________;
429 已知x = np.array([3,5,1,9,6,3),那么表达式x[x>5].sum()的值为_________;
430 已知x = np.array([3,5,1,9,6,3]),那么表达式x[(x%2==0)&(x>5)][0]的值为_________;
431 已知x= np.array([3,5,1,9,6,3]),那么表达式np.where(x>5, 10).sum()的值为_________;
432 已知x= np.matrix([[1,2,3][4,5,6]]).那么表达式x.mean(axis=0)的值为_________;
433 已知x= np.matrix([1,2,3,4,5]。那么表达式x*x.T的值为_________;

咳咳,表格虽然好看,但是博主实在承受不住啦~

呜呜呜~就不弄表格了,就平平常常的弄了,我不贪好看了!!

二、判断题

001、Python是一种跨平台、开源、免费的高级动态编程语言;

002、Python 3.x完全兼容Python 2.x;

003、在Windows平台上编写的Python程序无法在Unix平台运行;

004、不可以在同一台计算机上安装多个Python版本;

005、pip命令支持使用扩展名为whl的文件离线安装Python扩展库;

006、下载whl文件进行离线安装扩展库时,因为whl文件的名字都比较长,可以改成短一些的名字再使用pip进行安装;

007、用来安装Python扩展库的pip命令应该在命令提示符环境下运行,如果安装了多个版本的Python,最好切换至相应版本的Python安装目录下运行;

008、在Python 3.x中,内置函数input()把用户的键盘输入一律作为字符串返回;

009、已知 x = 3,那么赋值语句x = 'abcedfg’是无法正常执行的;

010、Python变量使用前必须先声明,并且一旦声明就不能在当前作用域内改变其类型了;

011、Python不允许使用关键字作为变量名,但是允许使用内置函数名作为变量名,不过这会改变函数名的含义,所以不建议这样做;

012、在Python中可以使用if作为变量名;

013、在Python 3.x中可以使用中文作为变量名;

014、Python变量名必须以字母或下划线开头,并且区分字母大小写;

015、加法运算符可以用来连接字符串并生成新字符串;

016、x = 9999**9999 这样的语句在Python中无法运行,因为数字太大了超出了整型变量的表示范围;

017、3+4j 不是合法的Python表达式;

018、0o12f是合法的八进制数字;

019、只有Python扩展库才需要导入以后才能使用其中的对象,Python标准库不需要导入即可使用其中的所有对象;

020、在Python中0xad是合法的十六进制数字表示形式;

021、4j 是合法Python数字类型;

022、Python使用缩进来体现代码之间的逻辑关系,对缩进的要求非常严格;

023、Python代码的注释只有一种方式,那就是使用#符号;

024、放在一对三引号之间的任何内容将被认为是注释;

025、尽管可以使用import语句一次导入任意多个标准库或扩展库,但是仍建议每次只导入一个标准库或扩展库;

026、为了让代码更加紧凑,编写Python程序时应尽量避免加入空格和空行;

027、在Python 3.5中运算符+不仅可以实现数值的相加、字符串连接,还可以实现列表、元组的连接和集合的并集运算;

028、在Python中可以使用 for 作为变量名;

029、在Python中可以使用 id 作为变量名,但是不建议这样做;

030、一个数字5也是合法的Python表达式;

031、执行语句from math import sin之后,可以直接使用sin()函数,例如 sin(3);

032、一般来说,Python扩展库没有通用于所有版本Python的,安装时应选择与已安装Python的版本对应的扩展库;

033、Python变量名区分大小写,所以student和Student不是同一个变量;

034、在Python 3.x中reduce()是内置函数;

035、如果只需要math模块中的sin()函数,建议使用from math import sin来导入,而不要使用import math导入整个模块;

036、表达式pow(3, 2) == 3 ** 2的值为True;

037、已知x = 3,那么执行语句x+=6之后,x的内存地址不变;

038、安装Python扩展库时只能使用pip工具在线安装,如果安装不成功就没有别的办法了;

039、列表、元组、字符串属于有序序列,而字典和集合属于无序序列;

040、同一个集合中的元素都是唯一的,不会存在重复的元素;

041、同一个列表中的元素都是唯一的,不允许存在相同的元素;

042、列表、元组、字符串支持双向索引,-1表示最后一个元素的下标;

043、集合支持双向索引,-1表示最后一个元素的下标;

044、Python支持使用字典的“键”作为下标来访问字典中的值;

045、列表可以作为字典的“键”

046、元组可以作为字典的“键”

047、字典的“键”必须是不可变的;

048、对于关键字in而言,集合的测试速度比列表快很多;

049、已知x为非空列表,那么表达式 sorted(x, reverse=True)== list(reversed(x))的值一定是 True;

050、已知x为非空列表,那么x.sort(reverse=True)和x.reverse()的作用是等价的;

051、生成器推导式比列表推导式具有更高的效率,推荐使用;

052、Python集合可以包含相同的元素;

053、Python字典中的“键”不允许重复;

054、Python字典中的“值”不允许重复;

055、Python集合中的元素可以是元组;

056、Pvthon集合中的元素可以是列表;

057、已知A和B是两个集合,并且表达式AB的值一定为True;

058、列表对象的append()方法属于原地操作,用于在列表尾部追加一个元素;

059、对于列表而言,在尾部追加元素比在中间位置插入元素速度更快一些,尤其是对于包含大量元素的列表;

060、假设有非空列表x,那么x.append(3)、x = x+[3]与x.insert(0,3)在执行时间上基本没有太大区别;

061、使用Python列表的方法 insert()为列表插入元素时会改变列表中插入位置之后元素的索引;

062、假设x为列表对象,那么x.pop()和x.pop(-1)的作用是一样的;

063、使用del命令或者列表对象的remove()方法珊除列表中非尾部元素时会影响列表中部分元素的索引;

064、使用列表对象的remove()方法可以删除列表中首次出现的指定元素,如果列中不存在要删除的指定元素则抛出异常;

065、元组是不可变的,不支持列表对象的inset()、remov()等方法,也不支持de命令册除其中的元素,但可以使用del 命令删除整个元组对象;

066、无法册除集合中指定位置的元素,只能删除特定值的元素;

067、元组的访问速度比列表要快一些,如果定义了一系列常量值,并且主要用途仅仅是对其进行遍历而不需要进行任何修改,建议使用元组而不使用列;

068、当以指定“键”为下标给字典对象赋值时,若该“键”存在则表示修改该“键”对应的“值”,若不存在则表示为字典对象添加一个新的“键:值对” ;

069、假设x是含有5个元素的列表,那么切片操作x[10:]是无法执行的,会抛出异常;

070、假设×是含有5个元素的列表,那么使用print(x[10])是无法执行的,会抛出异常;

071、只能对列表进行切片操作,不能对元组和字符串进行切片操作;

072、只能通过切片访问列表中的元素,不能使用切片修改列表中的元素;

073、只能通过切片访问元组中的元素,不能使用切片修改元组中的元素;

074、Python集合不支持使用下标访问其中的元素;

075、已知列表 x 中包含超过5个以上的元素,那么语句 x=x[5:]+x[:5]可以实现将列表x中的元素循环左移5位;

076、对于生成器对象x=(3 for i in range(5)),连续两次执行list(x)的结果是一样的;

077、对于大量列表的连接,extend()方法比运算符+具有更高的效率;

078、表达式 {1,3,2}>{1,2,3} 的值为 True ;

079、列表对象的extend()方法属于原地操作,调用前后列表对象的地址不变;

080、对于数字n,如果表达式0 not in [n%d for d in range(2, n)]的值为True则说明n是素数;

081、表达式a’+1的值为’b’

082、创建只包含一个元素的元组时,必须在元素后面加一个逗号,例如(3,);

083、表达式 list(‘[1,2,3]’)的值是[1,2,3] ;

084、已知x为非空列表,那么执行语句x[0]=3之后,列表对象x的内存地址不变;

085、列表对象的 pop()方法默认删除并返回最后一个元素,如果列表已空则抛出异常;

086、表达式{1,2}*2的值为{1,2,1,2};

087、假设random模块已导入,那么表达式random.sample(range(10), 20)的作用是生成20个不重复的整数;

088、假设random模块已导入,那么表达式 random.sample(range(10), 7)的作用是生成7个不重复的整数;

089、使用random模块的函数randint(1,100)获取随机数时,有可能会得到100 ;

090、已知x= (1,2,3,4),那么执行x[0] =5之后,x的值为(5,2,3,4);

091、已知x=3,那么执行x+=6语句前后x的内存地址是不变的;

092、内置函数 len()返回指定序列的元素个数,适用于列表、元组、字符串、字典、集合以及range、zip等迭代对象;

093、已知x和y是两个等长的整数列表,那么表达式sum((i*j for i,j in zip(x yv)))的作用是计算这两个列表所表示的向量的内积;

094、已知x和y是两个等长的整数列表,那么表达式[i+jfor i,j in zip(x,y)]的作用是计算这两个列表所表示的向量的和;

095、表达式int(‘1’*64,2) 与 sum(2**i for i in range(64)的计算结果是一样的,但是前者更快一些;

096、已知x = list(range(20)),那么语句 del x[::2]可以正常执行;

097、已知x= list(range(20)),那么语句x[::2]=[]可以正常执行;

098、已知x= list(range(20)),那么语句 print(x[100:200])无法正常执行;

099、已知x是个列表对象,那么执行语句y=x之后,对y所做的任何操作都会同样作用到x上;

100、已知x是个列表对象,那么执行语句y=x:]之后,对y所做的任何操作都会同样作用到x上;

101、在 Python中,变量不直接存储值,而是存储值的引用,也就是值在内存中的地址;

102、表达式 (i**2 for i in range(100))的结果是个元组;

103、在 Python 中元组的值是不可变的,因此,已知x = ([1],[2]),那么语句x(0).append(3)是无法正常执行的;

104、已知 x={1:1,2:2],那么语句x[3]=3无法正常执行;

105、已知列表x=[1,2,3,4],那么表达式x.find(5)的值应为-1;

106、列表对象的排序方法sort()只能按元素从小到大排列,不支持别的排序方式;

107、在Python中,关系运算符可以连续使用,例如1<3<5等价于1<3 and 3<5;

108、当作为条件表达式时,[]与 None等价;

109、当作为条件表达式时,0与False等价;

110、表达式[]== None 的值为True ;

111、当作为条件表达式时,{}与None等价;

112、表达式{}==None的值为True;

113、当作为条件表达式时,空值、空字符串、空列表、空元组、空字典、空集合、空迭代对象以及任意形式的数字0都等价于False;

114、Python关键字and和 or连接多个表达式时具有惰性求值特点,只计算必须计算的表达式;

115、在没有导入标准库 math 的情况下,语句x= 3 or math.sqart(9)也可以正常执行,并且执行后x的值为3;

116、在没有导入标准库math 的情况下,语句x= 3 and math.sqrt(16)也可以正常执行,并且执行后x的值为3;

117、在 Python中,选择结构和循环结构必须带有else子句;

118、如果仅仅是用于控制循环次数,那么使用for i in range(20)和fori in range(20, 40)的作用是等价的;

119、在循环中continue语句的作用是跳出当前循环;

120、在循环中 break语句的作用是结束该语句所在的循环;

121、带有else子句的循环如果因为执行了break语句而退出的话,则会执行else子句中的代码;

122、对于带有else子句的循环语句,如果是因为循环条件表达式不成立而自然结束循环,则执行else子句中的代码;

123、在条件表达式中不允许使用赋值运算符=,会提示语法错误;

124、调用函数时,在实参前面加一个型号*表示序列解包;

125、在 Python 3.x中语句print(*[1,2,3])不能正确执行;

126、函数是代码复用的一种方式;

127、在 Python中,使用关键字define定义函数;

128、定义函数时,即使该函数不需要接收任何参数,也必须保留一对空的圆括号来表示这是一个函数;

129、编写函数时,一般建议先对参数进行合法性检查,然后再编写正常的功能代码;

130、一个函数如果带有默认值参数,那么必须所有参数都设置默认值;

131、在调用函数时,把实参的引用传递给形参,也就是说,在函数体语句执行之前的瞬间,参和实参是同一个对象;

132、在 Python中,不能在一个函数的定义中再定义一个嵌套函数;

133、在Python中, lambda表达式属于可调用对象;

134、定义Python函数时必须指定函数返回值类型;

135、如果在函数中有语句return 3,那么该函数一定会返回整数3;

136、函数中必须包含return语句;

137、函数中的return语句一定能够得到执行;

138、不同作用域中的同名变量之间互相不影响,也就是说,在不同的作用域内可以定义同名的变量;

139、全局变量会增加不同函数之间的隐式耦合度,从而降低代码可读性,因此应尽量避免过多使用全
局变量;

140、函数内部定义的局部变量当函数调用结束后被自动删除;

141、在函数内部,既可以使用global来声明使用外部全局变量,也可以使用global直接定义全局变量;

142、在函数内部没有办法定义全局变量;

143、在函数内部直接修改形参的值并不影响外部实参的值;

144、在函数内部没有任何方法可以影响实参的值;

145、调用带有默认值参数的函数时,不能为默认值参数传递任何值,必须使用函数定义时设置的黑认值;

146、在同一个作用域内,局部变量会隐藏同名的全局变量;

147、形参可以看做是函I数内部的局部变量,函数运行结束之后形参就不可访问了;

148、假设已导入random标准库,那么表达式 max([random.randint(1, 10) for i in range(10)])的值一定是10 ;

149、python标准库 random的函数randint(m,n)用来生成一个[m,n]区间上的随机整数;

150、在函数内部没有任何声明的情况下直接为某个变量赋值,这个变量一定是函数内部的局部变量;

151、在 Python中定义函数时不需要声明函数参数的类型;

152、在函数中没有任何办法可以通过形参来影响实参的值;

153、在定义函数时,某个参数名字前面带有一个*符号表示可变长度参数,可以接收任意多个普通实参并存放于一个元组之中;

154、在定义函数时,某个参数名字前面带有两个*符号表示可变长度参数,可以接收任意多个关键参数并将其存放于一个字典之中;

155、定义函嘟时,带有默0认值的参数必须出现在参数列表的最右端,任何一个带有默认值的参数右边不允许出现没有默认值的普通位置参数;

156、在调用函数时,可以通过关键参数的形式进行传值,从而避免必须记住函数形参顺序的麻烦;

157、在调用函数时,必须牢记函数形参顺序才能正确传值;

158、lambda表达式中可以使用任意复杂的表达式,但是必须只编写一个表达式;

159、g = lambda x: 3不是一个合法的赋值语句;

160、包含 yield语句的函数一般称为生成器函数,可以用来创建生成器对象;

161、在函数中yield语句的作用和return完全一样;

162、语句pass仅起到占位符的作用,并不会做任何操作;

163、无法使用lambda表达式定义有名字的函数;

164、修饰器本质上也是一个函数,只不过这个函数接收其他函数作为参数并对其进行一定改造后返回—个新函数;

165、函数递归调用时对深度没有限制;

166、在调用函数时,如果传递列表、字典、集合等可变序列作为实参,并且在函数内部使用下标或可变序列对象自身的方法,是可以影响实参的值的;

167、函数的默认值参数的值是在定义函数时确定的;

168、已知seq为长度大于10的列表,并且已导入random模块,那么[random.choice(seg) for i in range(10)和random.sample(seq,10)等价;

169、在Python中定义类时,如果某个成员名称前有2个下划线则表示是私有成员;

170、在类定义的外部没有任何办法可以访问对象的私有成员;

171、Python中-切内容都可以称为对象;

172、栈和队列的都具有先入后出的特点;

173、在一个软件的设计与开发中,所有类名、函数名、变量名都应该遵循统一的风格和规范;

174、定义类时所有实例方法的第一个参数用来表示对象本身,在类的外部通过对象名来调用实例方法时不需要为该参数传值;

175、在面向对象程序设计中,函数和方法是完全一样的, 都必须为所有参数进行传值;

176、Python 中没有严格意义上的私有成员;

177、在Python中定义类时,运算符重载是通过重写特殊方法实现的。例如,在类中实现了__mul__ ()方法即可支持该类对象的**运算符;

178、在IDLE交互模式下,一个下划线“_”表示解释器中最后一次显示的内容或最后一次语句正确执行的输出结果;

179、对于Python类中的私有成员,可以通过“对象名.__类名__私有成员名”的方式来访问;

180、运算符“-”可以用于集合的差集运算;

181、如果定义类时没有编写析构函数,Python 将提供一个默认的析构函数进行必要的资源清理工作;

182、在派生类中可以通过“基类名.方法名()”的方式来调用基类中的方法;

183、在Python中定义类时实例方法的第一个参 数名称必须是self;

184、在Python 中定义类时实例方法的第一个参数名称不管是什么,都表示对象自身;

185、定义类时如果实现了__contains__()方法,该类对象即可支持成员测试运算in;

186、定义类时如果实现了__len__()方法,该类对象即可支持内置函数len();

187、定义类时实现了__eq__()方法,该类对象即可支持运算符== ;

188、定义类时实现了_pow_()方法,该类对象即可支持运算符**;

189、Python类的构造函数是_init___();

190、定义类时,在一个方法前面使用@classmethod进行修饰,则该方法属于类方法;

191、定义类时,在一个方法前面使用@staticmethod进行休息,则该方法属于静态方法;

192、在Python自定义类中,只能定义只读的属性,不能定义可读、可写、可删除的属性;

193、通过对象不能调用类方法和静态方法;

194、类方法和静态方法是属于类的,不能直接访问属于对象的成员;

195、属性可以像数据成员一样进行访间,但赋值时具有方法的优点,可以对新值进行检查;

196、任何包含__call__()方法的类的对象都是可调用的;

197、在Python中类也属于可调用对象,是因为使用类创建对象时会自动调用构造方法;

198、函数和对象方法是一样的,内部实现和外部调用都没有任何区别;

199、在设计派生类时,基类的私有成员默认是不会继承的;

200、扩展库numpy中的arange()函数功能和内置函数range()类似,只能生成包含整数的数组,无法创建包含实数的数组;

201、表达式np.emptyl(3,5)).sum()的值一定为0 ;

202、扩展库 numpy 的 isclose()和l allclose()用来测试两个数组是否严格相等;

203、扩展库numpy的 isclose()返回包含若干True/False值的数组,而 allclose()返回True或False值;

204、扩展库numpy的函数 append()和 insert()是在原数组的基础上追加或插入元素,没有返回值;

205、己知x是一个足够大的 numpy 二维数组,那么语句x0,2]=4的作用是把行下标为0、列下标为2的元素值改为4;

206、已知x.shape的值为(3,5),那么语句x;,3]=2的作用是把数组×所有行中列下标为3的元素值都改为2;

207、两个不等长的数组不能相加;

208、已知×和y是两个等长的一维数组,那么表达式x.dot(y)和 sum(x*y)的值相等;

209、已知x= np.arange(30).reshape(5,6)那么语句x([0,3],:]=0的功能为把数组×中行下标为0和3的所有元素值都修改为0.;

210、数组的reshape()方法不能修改元素个数,resize()方法可以;

211、扩展库numpy的函数corrcoef()用来计算相关系数矩阵;

212、扩展库numpy函数cov()可以用来计算协方差,函数std()用来计算标准差;

213、扩展库numpy的线性代数子模块linalg中提供了用来计算特征值与特征向量的函数eig();

214、扩展库numpy的线性代数子模块 linalg中提供了用来计算逆矩阵的函数inv();

215、扩展库numpy的线性代数子模块linalg 中提供了求解线性方程组的函数sove()和求解线性方程组最小二乘解的函数lstsq();

216、扩展库numpy的线性代数子模块 linalg中提供了用来计算不同范数的函数norm();

217、扩展库numpy在 linalg模块中提供了计算奇异值分解的函数svd();

218、扩展库pandas 中 Series对象的add_suffix()方法可以用于在每行索引后面增加后缀;

219、扩展库pandas 中 Series对象的add_prefix()方法可以用于在每行索引前面增加前缀;

220、扩展库pandas中 Series对象的hist()方法可以用于绘制直方图;

221、使用pandas i的 date_range()函数生产日期时间数据时,如果以6天为间隔可以设置参数freq为’6D’ ;

222、扩展库pandas 的read_csv()函数用于读取CSV文件中的数据并创建DataFrame对象;

223、扩展库pandas 的read_excel()函数用于读取Excel文件中的数据并创建DataFrame对象;

224、扩展库pandas 中 DataFrame 对象的index属性表示列名;

225、扩展库pandas支持使用Python字典直接创建DataFrame对象,此时字典中的“键”将作为DataFrame中的 columns;

226、使用扩展库pandas的函数 read_excel)读取Excel文件时,可以使用参数 sheetname 指定读取哪个工作表中的数据,并且该参数必须指定为工作表的名字,不能是序号;

227、使用扩展库pandas 的函数read_excel()读取Excel文件时,可以使用参数 thousands 指定把什么符号作为千分符;

228、使用扩展库 pandas i的函数read_excell)读取Excel文件时,可以使用参数 index_col指定把哪一列的数据作为DataFrame对象的index;

229、使用扩展库pandas的函数read_excel()读取Excel文件时,可以使用参数na_values 指定哪些值被解释为缺失值;

230、使用扩展库pandas 的函数 read_excel()读取Excel文件时,可以使用参数 usecols 指定只读取哪几列的数据;

231、已知 df为pandas 的DataFrame对象,那么 df[:10]表示访问df中前10列数据;

232、使用扩展库pandas 中 DataFrame对象的 iloc方法访问数据时,可以使用Datarame的 index标签,也可以使用整数序号来指定要访问的行和列;

233、使用扩展库pandas 中 DataFrame对象的loc方法访问数据时,可以使用DataFrame的 index标签,也可以使用整数序号来指定要访问的行和列;

234、已知 df为pandas 的 DataFrame对象,那么df[:10]表示访问df中前10行数据;

235、已知df为 pandas 的 DataFrame对象,那么df.at[3, ‘姓名’]表示访问行下标为3,姓名列的值;

236、已知df为pandas的DataFrame对象,那么dfldf’交易额’>1700]表示访问df中交易额高于1700元的数据;

237、已知df为pandas 的 DataFrame对象,那么dfldf’姓名’].isin('张三,李四’D]表示访问df中“姓名”列的值为“张三”或“李四”的数据;

238、已知df为pandas的 DataFrame对象,那么dfldft’交易额’].between(800,850)]表示访问df中“交易额”列的值介于800和l 850之间的数据;

239已知df为pandas 的DataFrame对象,那么df.describe()可以返回所有列的数值数量、最小值、最大值、标准差、平均值等信息;

240、扩展库pandas中 DataFrame对象的nsmallest()方法可以返回某列值最小的前几条数据;

241、扩展库pandas 中 DataFrame对象的nlargest()方法可以返回某列值最大的前几条数据;

242、扩展库pandas 中 DataFrame对象支持sort_index()方法沿某个方向按标签进行排序并返回一个新的DataFrame对象;

243、扩展库pandas 中 DataFrame结构支持使用 groupby()方法根据指定的一列或多列的值进行分组,得到一个GroupBy对象,该GroupBy对象支持大量方法对列数据进行求和、求均值以及其他操作,并自动忽略非数值列;

244、扩展库pandas 中 DataFrame对象 groupby()方法的参数 as_index=False时用来设置分组的列中的数据不作为结果DataFrame对象的index;

245、在使用pandas进行处理时,需要借助于人工分析根据具体的业务数据来确定异常值的阀值;

246、扩展库pandas 中 DataFrame对象支持使用dropna()方法丢弃带有缺失值的数据行,或者使用 fillna()方法对缺失值进行批量替换,也可以使用 loc()、iloc()方法直接对符合条件的数据进行替换;

247、扩展库pandas 中 DataFrame对象的drop_duplicates()方法可以用来删除重复的数据;

248、扩展库pandas 中 DataFrame结构的diff()对象支持进行数据差分,返回新的DataFrame对象;

249、扩展库pandas 中 DataFrame对象提供了pivot()方法和 pivot_table()方法实现透视表所需要的功能,返回新的DataFrame对象;

250、扩展库pandas提供了crosstab()函数根据一个DataFrame对象中的数据生成交叉表,返回新的DataFrame对象;

251、如果DataFrame对象中索引是日期时间数据,或者包含日期时间类型数据列,可以使用resample()方法进行重采样,实现按时间段进行统计查看员工业绩的功能;

252、标准差是一组数据分散程度或波动程度的一种度量,也是数据不确定性或不稳定性的一种度量。对于一组特定的数据,如果标准差较大则代表大部分数值和其平均值之间差异较大,如果标准差较小则代表这些数值较接近平均值;

253、扩展库pandas 中 DataFrame对象的std()方法可以计算标准差,cov()方法可以计算协方差;

254、扩展库 pandas 中 Series 对象和DataFrame的列数据提供了cat、 dt、 str三种属性接口(accessors),分别对应分类数据、日期时间数据和字符串数据;

255、扩展库 pandas的DataFrame数据中的日期时间列支持dt接口,该接口提供了dayofweek.dayofyear.is_leap_year.quarter、weekday_name等属性和方法;

256、扩展库 pandas 的 DataFrame 数据中的字符串列支持str接口,该接口提供了center、contains、count、endswith、find、extract、 lower、split等大量属性和方法;

257、扩展库pandas的 DataFrame对象的 plot()方法可以直接绘制折线图、柱状图、饼状图等各种形状的图形来展示数据,绘图时会自动调用扩展库matplotlib的功能;

三、选择题

01、多选题:下面特点属于Python语言的有哪些?

  • A.开源
  • B.免费
  • C.跨平台
  • D.解释执行

02、多选题:下面导入标准库对象的语句,正确的有?

  • A.from math import sin
  • B.from random import random
  • C.from math import *
  • D.import*

03、单选题:已知x=[1,2,3],执行语句x.append(4)之后,x的值是什么?

  • A.[1,2,3,4]
  • B. [4]
  • C.[1,2,3]
  • D.4

04、单选题:已知x=[1,2,3,4,5,6,7],那么x. pop()的结果是?

  • A.1
  • B.4
  • C.7
  • D.5

05、单选题:己知x=[1,2]和y=[3,4],那么xty的结果是?

  • A.3
  • B.7
  • C.[1,2,3,4]
  • D.[4,6]

06、单选题:sum([i*i for i in range (3)])的计算结果是?

  • A.3
  • B.5
  • C.2
  • D.14

07、单选题:下面代码的输出结果是?for i inrange (3):print (2,end=‘,’)

  • A.2,2,2,
  • B.2,2,2
  • C.2 2 2
  • D.2 2 2,

08、多选题:在 Python中,函数参数支持的类型有?

  • A.位置参数
  • B.默认值参数
  • C.关键参数
  • D.可变长度参数

09、单选题:下面哪个是用来定义类的关键字?

  • A.continue
  • B.class
  • C.CLASS
  • D. yield

10、单选题:os.path模块的下列方法,哪个是用来判断指定路径是否存在的?

  • A.exists()
  • B.exist()
  • C.getsize()
  • D.isfile()

11、单选题:os的下列函数中,用来给文件重命名的是?

  • A. rename()
  • B.remove()
  • C.system()
  • D.listdir()

三、问答题

001、到Python官方网站下载并安装Python解释器环境

002、到Anaconda官方网站下载并安装最新的Anaconda3开发环境

003、Python程序的__name__的作用是什么?

004、简单解释Python基于值的内存管理模式

005、简单解释运算符/和//的区别

006、为什么应尽量从列表的尾部进行元素的增加与删除操作?

007、编写程序,生成包含1000个0到100之间的随机整数,并统计每个元素的出现次数;

008、编写程序,用户输入一个列表和2个整数作为下标,然后使用切片获取并输出列表中介于2个下标之间的元素组成的子列表。例如用户输入[1, 2, 3, 4, 5, 6]和2,5,程序输出[3, 4, 5, 6] ;

009、设计一个字典,并编写程序,用户输入内容作为“键”,然后输出字典中对应的“值”,如果用户输入的“键”不存在,则输出“您输入的键不存在!”

010、编写程序,生成包含20个随机数的列表,然后将前10个元素升序排列,后10个元素降序排列,并输出结果;

011、分析逻辑运算符“or”的短路求值特性;

012、编写程序,运行后用户输入4位整数作为年份,判断其是否为闰年。如果年份能被400整除,则为闰年,如果年份能被4整除但不能被100整除也为闰年;

013、编写程序,生成一个包含50个随机整数的列表,然后删除其中所有奇数(提示:从后向前删);

014、编写程序,生成一个包含20个随机整数的列表,然后对其中偶数下标的元素进行降序排列,奇数下标的元素不变(提示:使用切片);

015、编写程序,用户从键盘输入小于1000 的整数,对其进行因式分解(例如,10=2×5,60=2×2×3×5 );

016、编写程序,至少使用2种不同的方法计算100以内所有奇数的和;

017、编写程序,输出所有由1、2、3、4这四个数字组成的素数,并且在每个素数中每个数字只使用一次;

018、编写程序,实现分段函数计算,如下表所示;

Python 800 道习题 (°ー°〃) 测试你学废了嘛_第3张图片

019、编写程序,输入任意大的自然数,输出各位数字之和;

020、编写程序,输入两个集合 setA和 setB,分别输出它们的交集、并集和差集setA-setB;

021、编写程序,输入一个自然数,输出它的二进制、八进制、十六进制表示形式;

022、编写程序,输入一个包含若干整数的列表,输出一个新列表,要求新列表中只包含原列表中的偶数;

023、编写程序,输入两个分别包含若干整数的列表 lstA 和IlstB,输出一个字典,要求使用列表 lstA中的元素作为键,列表 lstB 中的元素作为值,并且最终字典中的元素数量取决于 lstA和lstB中元素最少的列表的数量;

024、编写程序,输入一个包含若干整数的列表,输出新列表,要求新列表中的所有元素来自于输入的列表,并且降序排列;

025、编写程序,输入一个包含若干整数的列表,输出列表中所有整数连乘的结果;

026、编写程序,输入两个各包含2个整数的列表,分别表示城市中两个地点的坐标,输出两点之间的曼哈顿距离;

027、编写程序,输入包含若干集合的列表,输出这些集合的并集,要求使用reduce()函数和lambda表达式完成;

028、输入一个自然数字符串,然后输出各位数字之和。例如,输入字符串1234,输出 10;

029、输入一个字符串,输出翻转(首尾交换)后的字符串。例如,输入字符串12345,输出54321;

030、输入一个包含若干整数的列表,输出列表中的最大值。例如,输入[1,2,3,4,5,888],输出 888;

031、输入一个包含若干整数的列表,把列表中所有整数转换为字符串,然后输出包含这些字符串的列表。例如,输入[1,2,3,4,5,888],输出[‘1’,‘2’ ,‘3’, ‘4’, ‘5’ , '888] ;

032、输入一个包含若干任意数据的列表,输出该列表中等价于True的元素组成的列表。例如,输入[1,2,0,None,False, ‘a’]输出[1,2, ‘a’] ;

033、输入一个包含若干自然数的列表,输出这些自然数的平均值,结果保留3位小数;

034、输入一个包含若干自然数的列表,输出这些自然数降序排列后的新列表;

035、输入一个包含若干自然数的列表,输出一个新列表,新列表中每个元素为原列表中每个自然数的位数。例如,输入[1,888,99,23456],输出[1,3,2,5] ;

036、输入一个包含若干实数的列表,输出其中绝对值最大的实数。例如,输入[-8,64,3.5,-89],输出-89 ;

037、输入一个包含若干整数的列表,输出这些整数的乘积。例如,输入[-2,3,4],输出-24 ;

038、输入两个包含若干整数的等长列表,把这两个列表看作两个向量,输出这两个向量的内积 ;

五、代码阅读/改写题

001、阅读下面的代码,分析其功能,并指出可能存在的错误及其原因,最好能够给出解决方案。

def func(n,i):
    minNI = min(i,n-1)
    resu1t = 1
    for j in range(0,minNI)
        resu1t = resu1t * (n-j) / (minNI-J)
    return resu1t

002、给定字符串origin和userInput,计算userInput与origin的匹配精确度,也就是对应位置上字符一样的数量与origin长度的比值。

可能的应用

打字练习程序的成绩计算,origin表示要测试的内容,userInput表示练习者的实际输入,假设userInput的长度小于等于origin。

def Rate(origin,userInput):
    if not (isinstance(origin,str) and isinstance(userInput,str)):
        print('The two prameters must be strings.')
        return
    if len(origin)<len(userInput):
        print('Sorry. I suppose the second parameter string is shorter.')
        return
    right = 0    # 精确匹配的字符个数
    for origin_char,user_char in zip(origin,userInput):
        if origin_char==user_char:
            right += 1
origin = 'Shandong Institute of Business and Technology'
suerInput = 'Shandong institute of business and technolog'
print(Rate(origin,userInput))   # 输出测试结果

题目要求

  1. 使用生成器表达式改写上面的程序。

  2. 使用函数式编程改写上面的程序。

003、 题目要求:根据给定的文件“超市营业额2.xlsx”,数据格式如下:

Python 800 道习题 (°ー°〃) 测试你学废了嘛_第4张图片

编写程序完成下面的题目,所有代码保存在一个文件中,该文件使用自己姓名进行命名,例如“张三.py”,其中每个题目使用注释“#第1题”类似的形式进行分隔;

(01)读取文件中的数据,删除重复数据,把缺失的交易额使用每个员工自己所有交易额的中值进行填充,把小于500的交易额统一改为500,大于3000的交易额改为3000,修改后的数据保存为文件“数据调整结果.xlsx”,文件结构与“超市营业额2.xlsx”相同。然后使用修改后的数据完成后面的题目;

(02)查看单日交易总额最小的3天的交易数据,并查看这三天是周几,程序运行后直接输出这些结果;

(03)把所有员工的工号前面增加一位数字,增加的数字和原工号最后一位相同,把修改后的数据写入新文件“超市营业额2_修改工号.xlsx”。例如,工号1001变为11001,1003变为31003 ;

(04)把每个员工的交易数据写入文件“各员工数据.xlsx”,每个员工的数据占一个worksheet,结构和“超市营业额2.xlsx”一样,并以员工姓名作为worksheet的标题;

(05)查看日期尾数为6的数据前12行,输出这些结果,格式如下:

Python 800 道习题 (°ー°〃) 测试你学废了嘛_第5张图片

(06)查看日期尾数为12的交易数据,输出这些结果;

格式如下:

Python 800 道习题 (°ー°〃) 测试你学废了嘛_第6张图片

(07)计算张三每天交易总额的增幅,也就是每天交易总额减去前一天的交易总额,程序运行后输出前5天的结果;

格式如下:

Python 800 道习题 (°ー°〃) 测试你学废了嘛_第7张图片

(08)绘制折线图展示一个月内各柜台营业额每天变化趋势,保存为“1.png”,设置dpi为200 ;

(09)绘制饼状图展示该月各柜台营业额在交易总额中的占比,保存为“2.png”,设置dpi为200 ;

(10)把销售总额低于5万的员工工号和姓名写入“业绩差的员工.txt”文件,每行一个员工信息,工号和姓名之间使用英文逗号分隔;

(11)绘制柱状图展示每个员工在不同柜台上的交易总额,结果类似于下图,保存为“3.png”,设置dpi为200 ;

Python 800 道习题 (°ー°〃) 测试你学废了嘛_第8张图片

(12)使用透视表查看每个员工在不同柜台上班的次数,结果类似于下图显示的格式,程序运行后直接输出这些结果;

Python 800 道习题 (°ー°〃) 测试你学废了嘛_第9张图片

尾语

要成功,先发疯,下定决心往前冲!

学习是需要长期坚持的,一步一个脚印地走向未来!

未来的你一定会感谢今天学习的你。

—— 心灵鸡汤

本文章到这里就结束啦~感兴趣的小伙伴可以复制代码去试试哦

对啦!!记得三连哦~ 另外,欢迎大家阅读我往期的文章呀~

问题解答 · 源码获取 · 技术交流 · 抱团学习请联系

你可能感兴趣的:(python,python,pycharm,开发语言)