相关链接: 期末考试 模拟题1
浏览器(Chrome、火狐)登录PTA网址: pintia.cn,单击右上角“登录->考试登录”,下拉菜单输入cugb 选择“cugb-中国地质大学(北京)”,输入你的学号与姓名。进入后选择“我的题目集->2022秋《Python 科学计算》考试模拟练习”,阅读公告后答题。
本题目集开放时间为24小时,允许反复登录和练习。过期后无法再补,请注意!
1)客观题(选择、判断、填空、程序填空)答完后单击“保存”后保存答案,考试结束后批阅分数,考试时题目数量较多,每做几道题应及时保存以免丢失;
2)函数题、编程题请仔细阅读题面要求,输入样例与输出样例作为一次测试用例,注意输入输出格式必须完全相同(特别注意空格等符号)。在右侧代码区输入答案(函数题只写函数定义),单击底部“提交”,立刻能看到分数,多次取最高分;
3)函数题、编程题若未得满分,应仔细检查题目要求,单击右下方“测试用例”,复制或输入用例,单击“运行测试”观察输出结果,应使用不限于题面提示用例的多种测试用例检查程序正确性;
4)主观题答题区支持Markdown格式,注意:
实际期末考试时,考生只能在考试窗口内答题,不允许使用其它任何工具软件,提前结束考试时,单击考试窗口右边的叉(×),在弹出的提示框中按提示输入灰色文字,确定后完成后交卷。关闭考试平台即可。本模拟测试无需结束,关闭网页即可,开放期间可以任意登录。
本次是模拟测试,使用教师提供的账号登录,考试时由监考老师登录(考生无需知道账号),考试期间将全程监控,若打开浏览器及其他文件均属作弊行为!!!系统会自动拍照截图留证!!!
matplotlib能够绘制三维图,下图的类型是【 】。
补充
中文辅助记忆
下面代码中能够输出“World”子串的是【 】。
s=“Hello World!”
World
orld
Worl
orl
函数参数分为可变对象与不可变对象,下面【】属于可变对象的函数参数。
创建3行2列数组的语句是【 】。
import numpy as np
np.array([[1,2,3],[4,5,6]])
[[1 2 3]
[4 5 6]]
import numpy as np
np.array([1,2,3],[4,5,6])
TypeError: Field elements must be 2- or 3-tuples, got '4’
TypeError:字段元素必须是 2 或 3 元组,得到 '4’
import numpy as np
np.array(1,2,3,4,5,6)
TypeError: array() takes from 1 to 2 positional arguments but 6 were given
TypeError: array() 接受 1 到 2 个位置参数,但给出了 6 个
import numpy as np
np.array([[1,2],[3,4],[5,6]])
[[1 2]
[3 4]
[5 6]]
下面代码段的执行结果是【 】。
import numpy as np
a1=np.array([[1,2,3],[4,5,6]])
a1.shape
Pandas中的数据结构【 】只允许存储相同数据类型元素,类似于一维数组。
补充
下面代码的执行结果是【 】。
s="20+5i"
eval(s[1:-1])
补充
eval() 函数用来执行一个字符串表达式,并返回表达式的值。
输出1,2,3三个数字的代码段是【 】。
for i in range(3):
print(i)
0
1
2
i = 1
while i < 3:
print(i)
i+=1
1
2
i = 1
while i < 3:
i+=1
print(i)
3
for i in range(3):
print(i+1)
1
2
3
调用下列【 】包,可以实现快速傅里叶变换。
补充
已知a,b均是float型,则Python书写公式公式 a ( 1 + 1 b 2 ) 3 a\left(1+\frac{1}{b^{2}}\right)^{3} a(1+b21)3的正确表达式是【 】。
(a*(1+(1/b**2)))**3
a*(1+(1/b**2)**3)
a*((1+(1/b**2))**3)
(a*(1+(1/b**2)))**3
字符串 s= ‘a\nb\tc’,则 len(s)的值是【 】
下面【 】在调用函数时会报错。
def showNumber(numbers):
for n in numbers:
print(n)
showNumber([1,2,3])
showNumber('123')
showNumber((1,2,3))
showNumber(1,2,3)
下列选项中,符合Python语言变量命名规则的是【 】。
a3
3a
a 3
3 a
下面语句f = open('a1.txt','w')
的功能是【 】。
在文件路径表示中,‘…\’表示的含义是【 】。
下面代码段运行结果是输出[0 1 2 3 4]
,请填空【 】。
import numpy as np
x = np.____
print(x)
答案
x = np.array([0,1,2,3,4])
面向对象的三大特征是封装、____ 、____ 。
答案
继承 、多态
Python 语句s1 = [1, 2, 3, 4]; s2 = [5, 6, 7]; print(len(s1 + s2))
的运行结果是____。
答案
7
类方法通过装饰器@ ____ 定义,第一个形参通常为____。
如下面代码段展示了类方法的定义与调用:
class A: #定义类A
@【 填空1】 #装饰器
def speak(【填空2】): # 定义类方法speak
print("这是一个类方法:classmethod")
A.speak() #调用类A的speak方法
答案
classmethod、cls
阅读下面代码段,填空实现下面的运行结果。注意区分大小写。
import ____ as pd
da=[{'a':1,'b':2},{'a':5,'b':10,'c':20}]
df=pd.____(da)
print(df)
运行结果是:
a b c
0 1 2 NaN
1 5 10 20.0
答案
import pandas as pd
df=pd.DataFrame(da)
买单时,营业员要给用户找钱。营业员手里有10元、5元、1元(假设1元为最小单位)几种面额的钞票,其希望以尽可能少(张数)的钞票将钱换给用户。比如,需要找给用户17元,那么其需要给用户1张10元,1张5元,2张1元。而不是给用户17张1元或者3张5元与2张1元。
函数接口定义:
giveChange(money)#money为要找的钱。经过计算,应按格式"要找的钱 = x*10 + y*5 + z*1"输出。
裁判测试程序样例:
/* 请在这里填写答案 */
n = int(input())
for i in range(n):
giveChange(int(input()))
5
109
17
10
3
0
109 = 10*10 + 1*5 + 4*1
17 = 1*10 + 1*5 + 2*1
10 = 1*10 + 0*5 + 0*1
3 = 0*10 + 0*5 + 3*1
0 = 0*10 + 0*5 + 0*1
参考代码
def giveChange(money): # money为要找的钱。经过计算,应按格式"要找的钱 = x*10 + y*5 + z*1"输出。
ten = money // 10
five = (money - ten * 10) // 5
one = money - ten * 10 - five * 5
print("%d = %d*10 + %d*5 + %d*1" % (money, ten, five, one))
本题定义一个Book类,具有作者author、书名name、价格price等数据属性,具有销售sell方法,实现输出某书名(作者名)的价格。然后测试Book类,第一行输入书名,第二行输入作者,第三行输入价格,最后创建Book类对象b1,并且调用sell方法输出信息。
Book类的部分代码如下,请复制到代码区,然后修改代码完成编程。
class Book(object):
def __init__(self,name,author,price):
#以下填写代码实现初始化
#初始化结束
def sell(self):
print("%s(%s)的销售价格为%d" %(self.name,self.author,self.price))
s1=input() #输入书名给s1
s2=input() #输入作者给s2
p=float(input()) #输入价格给p
#以下填写代码定义Book类对象b1
#定义结束
b1.sell()
Python Program
wzh
58
Python Program(wzh)的销售价格为58
参考代码
class Book(object):
def __init__(self, name, author, price):
# 以下填写代码实现初始化
self.name = name
self.author = author
self.price = price
# 初始化结束
def sell(self):
print("%s(%s)的销售价格为%d" % (self.name, self.author, self.price))
s1 = input() # 输入书名给s1
s2 = input() # 输入作者给s2
p = float(input()) # 输入价格给p
# 以下填写代码定义Book类对象b1
b1 = Book(s1, s2, p)
# 定义结束
b1.sell()
相关链接: 期末考试 模拟题1