联大学堂《计算机科学与技术Python语言程序设计(河南理工大学)》题库及答案
联大学堂《计算机科学与技术Python语言程序设计(河南理工大学)》题库及答案
1、编写程序,运行后用户输入4位整数作为年份,判断其是否为闰年。如果年份能被400整除,则为闰年;如果年份能被4整除但不能被100整除也为闰年。
正确答案:x=input('Pleaseinputanintegerof4digitsmeaningtheyear:')x=eval(x)ifx%400==0or(x%4==0andnotx%100==0):print('Yes')else:print('No')
2、阅读下面的代码,解释其功能。>>>importstring>>>x=string.ascii()letters+string.digits>>>importrandom>>>print(.join(random.sample(x,10)))
正确答案:输出由英文字母大小写或数字组成的长度为10|不重复的随机字符串
3、编写程序,在D盘根目录下创建一个文本文件test.txt,并向其中写入字符串helloworld。
正确答案:fp=open(r’D:\test.txt’,‘a+’)print(‘helloworld’,file=fp)fp.close()
4、下面的代码是否能够正确运行,若不能请解释原因;若能,请分析其执行结果。>>>x=list(range(20))>>>foriinrange(len(x)):delx[i]
正确答案:无法正确执行|影响其他元素在列表中的索引|上面的代码会抛出下标越界的异常
5、阅读下面的代码,分析其执行结果。defdemo(*p):returnsum(p)print(demo(1,2,3,4,5))print(demo(1,2,3))
正确答案:15;6
6、写出下面代码的运行结果。defSum(a,b=3,c=5):returnsum([a,b,c])print(Sum(a=8,c=2))print(Sum(8))print(Sum(8,2))
正确答案:13;16;15
7、写出下面代码的执行结果。defJoin(List,sep=None):return(sepor.,.).join(List)print(Join([.a.,.b.,.c.]))print(Join([.a.,.b.,.c.],.:.))
正确答案:a,b,c
A.b:c
8、编写函数,模拟Python内置函数sorted()。
正确答案:defSorted(v):t=v[:]r=[]whilet:tt=min(t)r.append(tt)t.remove(tt)returnr
9、阅读下面的程序,判断其是否可以正常运行,如果可以运行则写出执行结果,如果不能运行则写出理由。classTest:def()init()(self,value):self.()value=value@propertydefvalue(self):returnself.()valuet=Test(3)t.value=5print(t.value)
正确答案:不能运行|程序中定义的是只读属性|不能修改属性的值
10、阅读下面的代码,解释其功能。>>>x=[range(3*i,3*i+5)foriinrange(2)]>>>x=list(map(list,x))>>>x=list(map(list,zip(*x)))
正确答案:首先生成一个包含列表的列表|然后模拟矩阵转置
11、下面的代码本意是把当前文件夹中所有html文件都改为htm文件,仔细阅读代码,简要说明可能存在的问题。importosfile()list=os.listdir(".")forfilenameinfile()list:pos=filename.rindex(".")iffilename[pos+1:]=="html":newname=filename[:pos+1]+"htm"os.rename(filename,newname)print(filename+"更名为:"+newname)