Python程序设计-试卷五_第1页
Python程序设计-试卷五_第2页
Python程序设计-试卷五_第3页
Python程序设计-试卷五_第4页
Python程序设计-试卷五_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

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

文档简介

《Python程序设计》期末考试试卷(五)课程名称:Python程序设计

适用专业:计算机相关专业

考试形式:闭卷笔试

考试时间:120分钟

总分:100分一、单项选择题(共20题,每题2分,共40分)以下哪个不是Python的关键字?A.passB.lambdaC.functionD.yield执行print(‘{:.2%}‘.format(0.1234))的输出结果是:A.0.12B.12.34%C.12.34D.0.12%想要创建一个从0到9(包含)的整数列表,以下哪个方法是不正确的?A.list(range(10))B.[iforiinrange(10)]C.list(0,1,2,3,4,5,6,7,8,9)D.[iforiinrange(0,10)]关于Python的切片语法s[i:j:k],以下描述正确的是:A.k必须为正整数B.i和j必须是整数C.当k为负数时,表示从后向前切片D.i默认是0,j默认是-1已知d={‘x‘:1,‘y‘:2},执行d.get(‘z‘,3)的结果是:A.3B.NoneC.抛出KeyErrorD.‘z‘关于集合运算,以下哪个表达式可以判断集合A是否为集合B的子集?A.A<=BB.A<BC.A.issubset(B)D.以上都对函数定义时,如果参数有默认值,那么:A.默认值参数必须放在非默认值参数之后B.默认值参数必须放在非默认值参数之前C.默认值参数可以在任意位置D.一个函数只能有一个默认值参数列表推导式[(x,y)forxin[1,2]foryin[3,4]]的结果是:A.[(1,3),(2,4)]B.[(1,3),(1,4),(2,3),(2,4)]C.[[1,3],[1,4],[2,3],[2,4]]D.[(1,2),(3,4)]在Python中,模块(module)和包(package)的关系是:A.包是特殊的模块B.模块是特殊的包C.包是包含多个模块的目录D.模块是包含多个包的目录面向对象中,__new__和__init__方法的区别是:A.__new__创建对象,__init__初始化对象B.__new__初始化对象,__init__创建对象C.两者功能相同D.__new__是类方法,__init__是静态方法使用@property装饰器后,如何为属性设置一个设置器(setter)?A.使用@setter装饰器B.使用@property.setter装饰器C.使用@属性名.setter装饰器D.无法设置想要将字符串‘hello\nworld‘按原样(包含换行符)写入文件,应该使用哪种文件打开模式?A.‘r‘B.‘w‘C.‘wb‘D.都可以,但写入时需注意转义pathlib.Path对象的.parent属性表示:A.文件的后缀名B.路径的父目录C.路径的绝对路径形式D.路径是否存在以下哪个异常表明尝试访问了字典中不存在的键?A.IndexErrorB.KeyErrorC.ValueErrorD.AttributeError在try...except语句中,想要捕获多个特定异常,应该:A.使用多个except块B.在一个except块中用元组指定多个异常类型C.使用exceptExceptionase然后判断类型D.以上都可以在SQL中,用于对查询结果进行排序的关键字是:A.SORTBYB.ORDERBYC.GROUPBYD.ARRANGEBY在Pandas中,用于处理时间序列数据的主要对象是:A.TimestampB.DatetimeIndexC.PeriodD.以上都是Matplotlib中,用于创建子图网格的便捷函数是:A.plt.subplots()B.plt.subplot()C.plt.figure()D.plt.axes()关于生成器表达式(x*2forxinrange(5)),以下说法正确的是:A.它会立即创建一个列表B.它返回一个迭代器,惰性求值C.它与列表推导式[x*2forxinrange(5)]没有区别D.它不能用在for循环中在虚拟环境中,使用pipfreeze>requirements.txt命令的目的是:A.安装requirements.txt中列出的所有包B.生成当前环境所有已安装包的列表C.卸载requirements.txt中列出的所有包D.升级requirements.txt中列出的所有包二、判断题(共15题,每题1分,共15分)Python中的复数类型用

j

表示虚部单位。()3==3.0

的结果是

True。()字符串的

strip()

方法只能去除首尾的空格。()列表的

copy()

方法创建的是列表的浅拷贝。()字典的

update()

方法可以用另一个字典或键值对序列来更新自身。()函数内部定义的嵌套函数可以访问外层函数的局部变量。()模块的

__name__

属性在其被直接运行时等于

‘__main__‘。()一个类如果没有显式定义

__init__

方法,Python会自动提供一个什么都不做的

__init__。()类属性在所有实例之间共享。()以

‘a+‘

模式打开的文件既可以读也可以追加写。()os.path.abspath(‘.‘)

可以获取当前目录的绝对路径。()try

块中的

return

语句会跳过

finally

块执行。()使用参数化查询(如

?

占位符)可以防止SQL注入攻击。()Pandas的

read_excel()

函数需要安装

openpyxl

xlrd

库支持。()plt.hist()

函数用于绘制数据的直方图。()三、填空题(共15空,每空1分,共15分)在Python中,空值(null)用关键字

______

表示。执行

divmod(10,3)

的结果是

______(一个元组)。使用

______

方法可以将字符串按指定分隔符分割成列表。已知

t=(1,),这是一个

______(数据类型)。使用

______

函数可以将一个可迭代对象的所有元素连接成一个字符串。在函数定义中,使用

/

符号可以强制其前面的参数必须以

______

形式传递。类的

______

方法定义了对象被

repr()

调用时的输出,通常用于调试。使用

pickle

模块的

______

函数可以将Python对象序列化并保存到文件。shutil

模块中的

______

函数可以递归地复制整个目录树。在正则表达式中,______

表示匹配字符串的结尾。SQL语句

______

用于在数据库中添加新的表。在Pandas中,df[‘col‘].______()

可以计算某列的标准差。使用

plt.______()

函数可以在图表中绘制散点图。collections

模块中的

______

类是一个带有默认值的字典。使用

______

语句可以强制退出当前循环。四、程序填空题(共2段程序,10个空,每空1分,共10分)1.员工薪资管理(5空)#员工数据:列表内是(姓名,部门,基本工资,奖金)元组employees=[(‘张三‘,‘技术部‘,8000,2000),(‘李四‘,‘市场部‘,7000,1500),(‘王五‘,‘技术部‘,9000,3000),]#任务1:计算每个员工的年薪(假设12个月基本工资+奖金)annual_salaries={}forempinemployees:name,dept,base,bonus=empannual=______(1)______*12+bonus#计算年薪annual_salaries[name]=annual#任务2:按部门统计总薪资dept_totals={}forempinemployees:name,dept,base,bonus=empsalary=base*12+bonus______(2)______[dept]=dept_totals.get(dept,0)+salary#累加部门总薪资print(‘部门总薪资:‘,dept_totals)#任务3:找出年薪最高的员工top_earner=______(3)______(annual_salaries.items(),key=lambdaitem:item[1])print(f‘年薪最高的员工是:{top_earner[0]},年薪{top_earner[1]}元‘)#任务4:将员工数据格式化为字符串emp_str_list=[]forempinemployees:#格式化为:`张三(技术部)`formatted=f‘{emp[0]}({emp[1]})‘emp_str_list.______(4)______(formatted)#添加到列表#任务5:将格式化后的字符串用‘;‘连接result=______(5)______#使用join方法连接列表print(‘员工列表:‘,result)2.网络数据获取与处理(5空)importrequestsimportjsondeffetch_weather(city_code):“”“获取指定城市的天气数据(模拟API调用)”“”#模拟APIURL,实际使用需替换为真实API#url=f‘/{city_code}‘#这里我们模拟一个本地JSON文件或一个假数据weather_data={‘101010100‘:{‘city‘:‘北京‘,‘temp‘:22,‘condition‘:‘晴‘},‘101020100‘:{‘city‘:‘上海‘,‘temp‘:25,‘condition‘:‘多云‘},}returnweather_data.get(city_code)defprocess_weather_info():city_code=input(‘请输入城市代码:‘)info=fetch_weather(city_code)ifnotinfo:print(‘未找到该城市的天气信息。‘)return#任务:将获取到的天气信息字典,使用json模块的______(6)______方法#转换为格式化的JSON字符串(缩进为2)json_str=json.______(7)______(info,indent=2,ensure_ascii=False)print(‘原始天气信息:‘)print(json_str)#将信息保存到文件filename=f‘weather_{city_code}.json‘try:withopen(filename,______(8)______,encoding=‘utf-8‘)asf:#以写入模式打开f.write(json_str)print(f‘天气信息已保存到{filename}‘)exceptIOErrorase:print(f‘保存文件失败:{e}‘)#模拟从文件加载并读取温度try:withopen(filename,‘r‘,encoding=‘utf-8‘)asf:loaded_info=json.______(9)______(f)#从文件加载JSON数据temp=loaded_info[‘temp‘]print(f‘{loaded_info[“city“]}当前温度是{temp}摄氏度。‘)#根据温度给出建议iftemp>30:advice=‘天气炎热,注意防暑。‘eliftemp<10:advice=‘天气寒冷,注意保暖。‘else:advice=‘天气宜人。‘print(‘建议:‘,______(10)______)#打印建议except(FileNotFoundError,json.JSONDecodeError,KeyError)ase:print(f‘处理数据时出错:{e}‘)#运行process_weather_info()五、编程题(共2题,每题10分,共20分)1.面向对象设计:简单的在线购物系统(10分)任务:设计

User

类,属性包括:user_id(用户ID)、username(用户名)、email。设计

Product

类,属性包括:product_id(商品ID)、name(商品名)、price(价格)、inventory(库存)。设计

Order

类,属性包括:order_id(订单号)、user(一个

User

对象

温馨提示

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

评论

0/150

提交评论