《PYTHON程序设计》题库1 WEB程序设计题库.docx
- 文档编号:9967804
- 上传时间:2023-05-22
- 格式:DOCX
- 页数:6
- 大小:19.43KB
《PYTHON程序设计》题库1 WEB程序设计题库.docx
《《PYTHON程序设计》题库1 WEB程序设计题库.docx》由会员分享,可在线阅读,更多相关《《PYTHON程序设计》题库1 WEB程序设计题库.docx(6页珍藏版)》请在冰点文库上搜索。
《PYTHON程序设计》题库1WEB程序设计题库
【《Python程序设计》题库
(1)】web程序设计题库
214、表达式{1,2}*2的值为{1,2,1,2}。
(错)215、Python变量名区分大小写,所以student和Student不是同一个变量。
(对)216、正则表达式元字符“^”一般用来表示从字符串开始处进行匹配,用在一对方括号中的时候则表示反向匹配,不匹配方括号中的字符。
(对)217、正则表达式元字符“\s”用来匹配任意空白字符。
(对)218、正则表达式元字符“\d”用来匹配任意数字字符。
(对)219、lambda表达式中可以使用任意复杂的表达式,但是必须只编写一个表达式。
(对)220、Python类的构造函数是__init__()。
(对)221、定义类时,在一个方法前面使用@clas___ethod进行修饰,则该方法属于类方法。
(对)222、定义类时,在一个方法前面使用@staticmethod进行休息,则该方法属于静态方法。
(对)223、通过对象不能调用类方法和静态方法。
(错)224、在Python中可以为自定义类的对象动态增加新成员。
(对)225、Python类不支持多继承。
(错)226、属性可以像数据成员一样进行访问,但赋值时具有方法的优点,可以对新值进行检查。
(对)227、文件对象是可以迭代的。
(对)228、文件对象的___()方法用来返回文件指针的当前位置。
(对)229、以写模式打开的文件无法进读操作。
(对)230、假设已成功导入os和sys标准库,那么表达式os.path.dirname(sys.executable)的值为Python___目录。
(对)231、只可以动态为对象增加数据成员,而不能为对象动态增加成员方法。
(错)232、Python字典支持双向索引。
(错)233、Python___支持双向索引。
(错)234、Python元组支持双向索引。
(对)235、假设re模块已成功导入,并且有pattern=re.pile('^'+'\.'.join([r'\d{1,3}'foriinrange(4)])+'$'),那么表达式pattern.___tch('192.168.1.103')的值为None。
(错)236、假设random模块已导入,那么表达式random.sample(range(10),20)的作用是生成20个不重复的整数。
(错)237、假设random模块已导入,那么表达式random.sample(range(10),7)的作用是生成7个不重复的整数。
(对)238、在Python3.x中redu___()是内置函数。
(错)239、以读模式打开文件时,文件指针指向文件开始处。
(对)240、以追加模式打开文件时,文件指针指向文件尾。
(对)241、已知x=(1,2,3,4),那么执行x[0]=5之后,x的值为(5,2,3,4)。
(错)242、已知x=3,那么执行x+=6语句前后x的内存地址是不变的。
(错)243、成员测试运算符in作用于___时比作用于列表快得多。
(对)244、在Python3.x中,使用内置函数input()接收用户输入时,不论用户输入的什么格式,一律按字符串进行返回。
(对)245、___Python扩展库时只能使用pip工具在线___,如果___不成功就没有别的办法了。
(错)246、使用random模块的函数randint(1,100)获取随机数时,有可能会得到100。
(对)247、如果只需要___th模块中的sin()函数,建议使用from___thimportsin来导入,而不要使用import___th导入整个模块。
(对)248、已知列表x=[1,2,3,4],那么表达式x.find(5)的值应为-1。
(错)249、列表对象的排序方法sort()只能按元素从小到大排列,不支持别的排序方式。
(错)250、g=lambdax:
3不是一个合法的赋值表达式。
(错)251、内置函数len()返回指定序列的元素个数,适用于列表、元组、字符串、字典、___以及range、zip等迭代对象。
(对)252、已知x和y是两个等长的整数列表,那么表达式sum((i*jfori,jinzip(x,y)))的作用是计算这两个列表所表示的向量的内积。
(对)253、已知x和y是两个等长的整数列表,那么表达式[i+jfori,jinzip(x,y)]的作用时计算这两个列表所表示的向量的和。
(对)254、表达式int('1'*64,2)与sum(2**iforiinrange(64))的计算结果是一样的,但是前者更快一些。
(对)255、已知x=list(range(20)),那么语句delx[:
:
2]可以正常执行。
(对)256、已知x=list(range(20)),那么语句x[:
:
2]=[]可以正常执行。
(错)257、已知x=list(range(20)),那么语句print(x[100:
200])无___常执行。
(错)258、已知x是个列表对象,那么执行语句y=x之后,对y所做的任何操作都会同样作用到x上。
(对)259、已知x是个列表对象,那么执行语句y=x[:
]之后,对y所做的任何操作都会同样作用到x上。
(错)260、在Python中,变量不直接存储值,而是存储值的引用,也就是值在内存中的地址。
(对)261、表达式(i**2foriinrange(100))的结果是个元组。
(错)262、在Python中元组的值是不可变的,因此,已知x=([1],[2]),那么语句x[0].append(3)是无___常执行的。
(错)263、包含yield语句的函数一般成为生成器函数,可以用来创建生成器对象。
(对)264、在函数中yield语句的作用和return完全一样。
(错)265、Python内置的字典dict中元素是按添加的顺序依次进行存储的。
(错)266、Python内置的___set中元素顺序是按元素的哈希值进行存储的,并不是按先后顺序。
(对)267、已知x={1:
1,2:
2},那么语句x[3]=3无___常执行。
(错)268、Python内置字典是无序的,如果需要一个可以记住元素插入顺序的字典,可以使用collections.OrderedDict。
(对)269、语句pass仅起到占位符的作用,并不会做任何操作。
(对)270、在条件表达式中不允许使用赋值运算符“=”,会提示语法错误。
(对)271、任何包含__call__()方法的类的对象都是可调用的。
(对)272、在Python中函数和类都属于可调用对象。
(对)273、无法使用lambda表达式定义有名字的函数。
(错)274、已知x是一个列表,那么x=x[3:
]+x[:
3]可以实现把列表x中的所有元素循环左移3位。
(对)275、已知x和y是两个字符串,那么表达式sum((1fori,jinzip(x,y)ifi==j))可以用来计算两个字符串中对应位置字符相等的个数。
(对)276、函数和对象方法是一样的,内部实现和外部调用都没有任何区别。
(错)277、在设计派生类时,基类的私有成员默认是不会继承的。
(对)278、如果在设计一个类时实现类__len__()方法,那么该类的对象会自动支持Python内置函数len()。
(对)279、Python3.x中字符串对象的encode()方法默认使用utf8作为编码方式。
(对)280、已知x='hellowworld.'.encode(),那么表达式x.decode('gbk')的值为'hellowworld.'。
(对)281、已知x='Python是一种非常好的编程语言'.encode(),那么表达式x.decode('gbk')的值为'Python是一种非常好的编程语言'。
(错)282、正则表达式'^'只能匹配所有以''开头的字符串。
(对)283、正则表达式'^\d{18}|\d{15}$'只能检查给定字符串是否为18位或15位数字字符,并不能保证一定是合法的___号。
(对)284、正则表达式'[^abc]'可以一个匹配任意除'a'、'b'、'c'之外的字符。
(对)285、正则表达式'python|perl'或'p(ython|erl)'都可以匹配'python'或'perl'。
(对)286、文本文件是可以迭代的,可以使用forlineinfp类似的语句遍历文件对象fp中的每一行。
(对)287、Python的主程序文件python.exe属于二进制文件。
(对)288、使用记事本程序也可以打开二进制文件,只不过无___确识别其中的内容。
(对)2___、对字符串信息进行编码以后,必须使用同样的或者兼容的编码格式进行解码才能还原本来的信息。
(对)290、已知当前文件夹中有一个文件readme.___具有只读属性,假设标准库os已正确导入,那么可以通过语句os.chmod('readme.___',0o777)来删除该文件的只读属性。
(对)291、Python标准库os的函数remove()不能删除具有只读属性的文件。
(对)292、由于异常处理结构try...ex___pt...finally...中finally里的语句块总是被执行的,所以把关闭文件的代码放到finally块里肯定是万无一失,一定能保证文件被正确关闭并且不会引发任何异常。
(错)三、编程题1、编写程序,在D盘根目录下创建一个文本文件test.___,并向其中写入字符串helloworld。
答:
fp=open(r’D:
\test.___’,‘a+’)print(‘helloworld’,file=fp)fp.close()2、写出下面代码的优化版本,提高运行效率。
x=list(range(500))foriteminx:
t=5**5print(item+t)答:
x=list(range(500))t=5**5foriteminx:
print(item+t)3、编写程序,生成一个包含20个随机整数的列表,然后对其中偶数下标的元素进行降序排列,奇数下标的元素不变。
(提示:
使用切片。
)答:
importrandomx=[random.randint(0,100)foriinrange(20)]print(x)y=x[:
:
2]y.sort(reverse=True)x[:
:
2]=yprint(x)4、写出下面代码的执行结果。
defJoin(List,sep=None):
return(sepor',').join(List)print(Join(['a','b','c']))print(Join(['a','b','c'],':
'))答:
a,b,ca:
b:
c5、写出下面代码的运行结果。
defSum(a,b=3,c=5):
returnsum([a,b,c])print(Sum(a=8,c=2))print(Sum(8))print(Sum(8,2))答:
1316156、写出下面代码的运行结果。
defSum(*p):
returnsum(p)print(Sum(3,5,8))print(Sum(8))print(Sum(8,2,10))答:
168207、编写函数,判断一个数字是否为素数,是则返回字符串YES,否则返回字符串NO。
答:
import___thdefIsPrime(v):
n=int(___th.sqrt(v)+1)foriinrange(2,n):
ifv%i==0:
return'No'else:
return'Yes'8、编写函数,模拟Python内置函数sorted()。
答:
defSorted(v):
t=v[:
:
]r=[]whilet:
tt=min(t)r.append(tt)t.remove(tt)returnr9、编写程序,生成包含20个随机数的列表,然后将前10个元素升序排列,后10个元素降序排列,并输出结果。
xyx<=x<=x<=x<=x0答:
x=input('Pleaseinputx:
')x=eval(x)ifx=20:
print(0)elif0<=x
classTest:
def__init__(self,value):
self.__value=value@propertydefvalue(self):
returnself.__valuet=Test(3)t.value=5print(t.value)答:
不能运行。
程序中定义的是只读属性,不能修改属性的值。
13、下面代码的功能是,随机生成50个介于[1,20]之间的整数,然后统计每个整数出现频率。
请把缺少的代码补全。
importrandomx=[random.____________(1,20)foriinrange(_______)]r=dict()foriinx:
r[i]=r.get(i,_____)+1fork,vinr.items():
print(k,v)答:
分别填写randint、50、014、假设有Python程序文件demo.py,代码如下:
def___in():
if__name__=='_____in__':
(1)else:
(2)___in()将该程序文件直接运行时输出结果为_________,作为模块导入时得到结果___________-。
(1、2)15、下面程序的执行结果是__________________。
(1)s=0foriinrange(1,101):
s+=ielse:
(1)16、下面程序的执行结果是______________。
(1275)s=0foriinrange(1,101):
s+=iifi==50:
print(s)breakelse:
(1)17、下面的程序是否能够正常执行,若不能,请解释原因;若能,请分析其执行结果。
fromrandomimportrandintresult=set()whileTrue:
result.add(randint(1,10))iflen(result)==20:
breakprint(result)答:
无___确执行,因为该程序的功能是从[1,10]区间中选择20个不同的随机整数,而该区间并没有这么多整数,所以程序死循环。
18、下面的代码是否能够正确运行,若不能请解释原因;若能,请分析其执行结果。
>>>x=list(range(20))>>>foriinrange(len(x)):
delx[i]答:
无___确执行,因为删除列表元素时会影响其他元素在列表中的索引,上面的代码会抛出下标越界的异常。
19、阅读下面的代码,解释其功能。
>>>x=list(range(20))>>>forindex,valueinenumerate(x):
ifvalue==3:
x[index]=5答:
将列表x中值为3的元素修改为5。
20、阅读下面的代码,解释其功能。
>>>x=[range(3*i,3*i+5)foriinrange
(2)]>>>x=list(___p(list,x))>>>x=list(___p(list,zip(*x)))答:
首先生成一个包含列表的列表,然后模拟矩阵转置。
21、阅读下面的代码,解释其功能。
>>>importstring>>>x=string.ascii_letters+string.digits>>>importrandom>>>print(''.join(random.sample(x,10)))答:
输出由英文字母大小写或数字组成的长度为10且不重复的随机字符串。
22、阅读下面的代码,分析其执行结果。
defdemo(*p):
returnsum(p)print(demo(1,2,3,4,5))print(demo(1,2,3))答:
输出结果为15623、阅读下面的代码,分析其执行结果。
defdemo(a,b,c=3,d=100):
returnsum((a,b,c,d))print(demo(1,2,3,4))print(demo(1,2,d=3))答:
输出结果为10924、下面的代码输出结果为_____________。
(3)defdemo():
x=5x=3demo()print(x)25、下面函数的功能为_______________。
(将序列循环左移k位,得到新序列并返回)defdemo(lst,k):
ifk
defdemo(n):
b_n=bin(n)index=b_n.rfind('1')+1returnlen(b_n[index:
])27、有n个乒乓球运动员打淘汰赛,编写函数计算至少需要多少场比赛才能决出冠军,不允许直接使用n-1。
defdemo(n):
ifn==1:
return0ifn==2:
return1m,c=divmod(n,2)returnm+demo(c+m)28、使用循环和列表推导式两种方法求解百钱买百鸡问题。
假设大鸡5元一只,中鸡3元一只,小鸡1元三只,现有100元钱想买100只鸡,有多少种买法?
(1)循环>>>forxinrange(21):
foryinrange(34):
z=100-x-yifz%3==0and5*x+3*y+z//3==100:
print(x,y,z)02575418788118112484
(2)列表推导式>>>[(x,y,100-x-y)forxinrange(21)foryinrange(34)if(100-x-y)%3==0and5*x+3*y+(100-x-y)//3==100][(0,25,75),(4,18,78),(8,11,81),(12,4,84)]
模板,内容仅供参考
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- PYTHON程序设计 PYTHON程序设计题库1 WEB程序设计题库 PYTHON 程序设计 题库 WEB