Python A卷答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《Python》期末考试试题A卷答案
一、问答题(每题2分,共20分)
(1)整形和浮点型(或者int和float)
(2)乘法*, 幂运算 **,求余 %
(3)/是算术除,包含小数,//是整除,不包含小数(意思对即可)
(4)
1、括号内优先
2、幂运算
3、乘法、除法、求余运算
4、加法减法
5、关系运算
6、逻辑运算
答出前4条即可
(5)数字转字符串的函数str(),字符串转数字的函数int(),字符串转浮
点数的函数float(),字符串描述的运算式求值函数是eval()
(6)读方式:open(“file.txt”, ‘r’)
写方式:open(“file.txt”, ‘w’)
追加方式:open(“file.txt”, ‘a’)
(7)
逻辑运算符与:and
或运算:or
非运算:not。
(8)sublist = list1[2:4]
(9) break语句表示要终止循环。
continue语句表示结束当前循环,开始下一次循环。
两者的区别是:break终止循环,continue还有继续循环,只是结束本次循环。
(10) lambda表达式的作用就是为了节省函数的格式化定义,同时减少函
数调用的开销。
例如 lambda x:x+1
二、给出下列代码行相应的输出(每题3分,共15分)
1、在一个随机选择群组中有23 个人,有两个人有相同生日的概率是\n 0.51.
2、This sentence contains five words
This sentence contains six different words
3、to be, or not to be.
4、3
5、enter the population growth as a percent:2
the population will double in about 36.00 years.
二、找出代码中的错误(每题3分,共15分)
意思对即可
1、第二行无效。元组中的项不能直接被重新分配值。
2、i应该被初始化为-1以遍历所有的元素。
3、输出函数的调用缺少括号。
4、文件不可读,因为它已经关闭。
5、self参数从第二行缺失。
三、使用for循环重写以下程序(10分)
for num in range(1,10,2):
print(num)
四、编程题(60分)
1、def main():
##display presidents ordered by length of first name.
infile=open(“Uspres.txt”,’r’)
listPres=[pres.restrip() for pres in infile]
infile.close()
listPres.sort(key=sortByLengthOfFirstName)
for i in range(6):
print(listPresp[i])
def sortByLengthOfFirstName(pres)
return len(pres.split()[0])
main()
2、class Mortgage:
def __init__(self,principal,interestRate,term):
self._principal=principal
self._ interestRate= interestRate
self._ term= term
def calculateMonthlyPayment(self)
i= self._ interestRate/1200
return((i/(1-(1+i)**(-12* self._ term))))* self._principal)
六、阐述题(20分)
1、请解释一下什么是函数,什么是类和对象,它们有什么关系,并给出一个函
数和类的例子。(20分)