《python》期末考试卷A及答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
北京邮电大学2016——2017学年第一学期
《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,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 L[3]
L.insert(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”)
(假设输入的是b)
4、num_of_sibilants = 0
word =“stargazers”
for ch in word:
if (ch ==’s’) or (ch ==’z’)
num_of_sibilants += 1
print(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 = 72/x
return time
当输入是2时,求输出结果。
三、找出代码中的错误(每题3分,共15分)
1、title = (“the”, “call”, “of”, “the”, “wild”)
title[1] = “calm”
print(“” . join(title))
2、## display the elements of a list
list1 = [‘a’,‘b’,‘c’,‘d’]
i = 0
while i < (len(list1)-1):
i += 1
print(list1[i])
3、list1 = [2, 5, 7, 2, 7, 8]
list2 = [ ]
for item in list1:
if item not in list2:
list2.append(item)
print list2
4、##假设文件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 = 1
while num <= 9:
print(num)
num += 2
五、编程题(20分)
1、文件USPres.txt 包含了以任职时间安排的前44任总统的名字。编写一个程序,将这些程序放在一个列表中,按照总统姓氏的字母顺序进行排序,并显示列表中前6位总统的名字。如图1所示。(10分)
图1 列表输出
2、如果一个房屋贷款本金为
A ,利率为r %,贷款期限为n 年,则每个月还款额
的计算公式为:每月还款额=??
1-(1+??)-12??×?? ,??=??
1200
创建一个名为Mortgage 的类,其中包含principal 、interest rate 和term 实例变量以及一个名为calculateMonthlyPayment 的方法。(10分)六、阐述题(20分)
1、请解释一下什么是函数,什么是类和对象,它们有什么关系,并给出一个函数和类的例子。(20分)
函数:将复杂问题分解为若干个子问题的功能块。
类:将数据和操作封装在一起,对一类事物的抽象描述称为类。
对象:对象是类的实例化。
函数、类和对象的例子只要满足定义语法即可,不用很复杂。
John Adams
John Q.Adams
Chester Arthur
James Buchanan
George H. W. Bush
George W. Bush