《python》期末考试卷A及答案_第1页
《python》期末考试卷A及答案_第2页
《python》期末考试卷A及答案_第3页
《python》期末考试卷A及答案_第4页
《python》期末考试卷A及答案_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、北京邮电大学 20162017 学年第一学期Python期末考试试题 B一、问答题(每题 2 分,共 20 分)1、Python 语言的数值类型有哪些? 2 分2、请给出乘法、幂运算和求余运算的运算符? 2 分3、请解释一下/和/号的区别? 2 分4、请给出算术运算的优先级顺序?2 分5、请给出数字转字符串的函数、字符串转整数的函数、字符串转浮点数的函数以及对字符串描述的运算式求值函数?2 分6、请给出以读方式、写方式和追加方式打开文件的语法,例如文件名为”file.txt”? 2 分7、请给出逻辑运算中的与运算、或运算和非运算的运算符? 2 分8、如果从列表 list1=1,4,7,3,8,

2、9中得到子列表 sublist=7,3,请问如何操作? 2 分9、请给出 break 语句和 continue 语句的定义及区别? 2 分10、请解释 lambda 表达式的作用,并举例?2 分二、给出下列代码行相应的输出(每题 3 分,共 15 分)1、 str1=“在随机选择的人群中有 0:d 个人,” + “两个人有相同生日的概率是n 1:.2f.”print(str1.format(23, .507397)2、L=“sentence”,“contains”,“five”,“words.” L.insert(0,“This”)print(“ ”.join (L) del L3 L.ins

3、ert(3,“six”)L.insert(4,“different”) print(“ ”.join (L)3、letter = input(“enter a,b,or c: ”) letter = letter.upper()if letter =“a”:print(“a,my name is Alice.”) elif letter =“b”:print(“to be, or not to be.”) elif letter =“c”:print(“oh, say, can you see.”) else:print(“you did not enter a valid leeter”)

4、(假设输入的是 b)4、num_of_sibilants = 0 word =“stargazers” for ch in word:if (ch =s) or (ch =z) num_of_sibilants += 1print(num_of_sibilants)5、def main():p=float(input(“enter the population growth as a percent: ”) print(“人群数要翻倍”,end=”)print(“在大约 0:.2f 年后.”.format(doublingTime(p) def doublingTime(x):time = 7

5、2/x return time当输入是 2 时,求输出结果。三、找出代码中的错误(每题 3 分,共 15 分)1、title = (“the”, “call”, “of”, “the”, “wild”) title1 = “calm”print(“ ” . join(title)2 、 # display the elements of a list list1 = a, b, c, d i = 0while i (len(list1)-1): i += 1print(list1i)3、list1 = 2, 5, 7, 2, 7, 8list2 = for item in list1:if i

6、tem not in list2: list2.append(item)print list24、#假设文件 ABC.txt 包含了三行数据 a、b、c infile = open(“ABC.txt”,r)infile.close()line = infile.readline()5、class Triangle:def init (base, altitude): self._base = base self._altitude = altitude四、使用 for 循环重写以下程序(10 分)num = 1while num = 9: print(num) num += 2五、编程题(20

7、 分)1、文件 USPres.txt 包含了以任职时间安排的前 44 任总统的名字。编写一个程序, 将这些程序放在一个列表中,按照总统姓氏的字母顺序进行排序,并显示列表中前 6 位总统的名字。如图 1 所示。(10 分)John Adams John Q.Adams Chester Arthur James BuchananGeorge H. W. Bush George W. Bush图 1 列表输出2、如果一个房屋贷款本金为A,利率为r %,贷款期限为n 年,则每个月还款额的计算公式为:每月还款额 = , =1 (1 + )121200创建一个名为 Mortgage 的类,其中包含 pri

8、ncipal、interest rate 和 term 实例变量以及一个名为 calculateMonthlyPayment 的方法。(10 分)六、阐述题(20 分)1、请解释一下什么是函数,什么是类和对象,它们有什么关系,并给出一个函数和类的例子。(20 分)函数:将复杂问题分解为若干个子问题的功能块。类:将数据和操作封装在一起,对一类事物的抽象描述称为类。对象:对象是类的实例化。函数、类和对象的例子只要满足定义语法即可,不用很复杂。Python期末考试试题A 卷答案一、问答题(每题 2 分,共 20 分)(1)整形和浮点型(或者 int 和 float) (2)乘法*, 幂运算 *, 求

9、余 %(3)/是算术除,包含小数,/是整除,不包含小数(意思对即可)(4)1、括号内优先2、幂运算3、乘法、除法、求余运算4、加法减法5、关系运算6、逻辑运算答出前 4 条即可数字转字符串的函数 str(),字符串转数字的函数 int(),字符串转浮点数的函数 float(),字符串描述的运算式求值函数是 eval()读方式:open(“file.txt”, r)写方式:open(“file.txt”, w)追加方式:open(“file.txt”, a)(7)逻辑运算符与:and 或运算:or非运算:not。(8)sublist = list12:4break 语句表示要终止循环。conti

10、nue 语句表示结束当前循环,开始下一次循环。两者的区别是:break 终止循环,continue 还有继续循环,只是结束本次循环。lambda 表达式的作用就是为了节省函数的格式化定义,同时减少函数调用的开销。例如 lambda x:x+1二、给出下列代码行相应的输出(每题 3 分,共 15 分)1、 在一个随机选择群组中有 23 个人,有两个人有相同生日的概率是n 0.51.2、 This sentence contains five wordsThis sentence contains six different words 3、 to be, or not to be.4、35、 e

11、nter the population growth as a percent:2the population will doublein 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():#disp

12、lay 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(listPrespi)def sortByLengthOfFirstName(pres) return len(pres.split()0)main()2、class Mortgage:def init (self,principal,interestRate,term): self._principal=principalself._ interestRate= interestRa

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论