python二级考试操作题10

合集下载

计算机二级python考试试题及答案

计算机二级python考试试题及答案

计算机二级python考试试题及答案一、选择题(每题2分,共20分)1. Python中,以下哪个是正确的变量命名?A. 2variableB. variable2C. variable-nameD. variable name答案:B. variable22. 在Python中,以下哪个是合法的列表元素?A. [1, 2, 3]B. (1, 2, 3)C. {1, 2, 3}D. <1, 2, 3>答案:A. [1, 2, 3]3. Python中,以下哪个关键字用于定义函数?A. defB. functionC. methodD. class答案:A. def4. 在Python中,以下哪个操作符用于比较两个值是否不相等?A. ==C. =D. <=答案:B. !=5. Python中,以下哪个是正确的字典定义方式?A. dict = {key: value}B. dict = (key: value)C. dict = {key = value}D. dict = [key: value]答案:A. dict = {key: value}6. Python中,以下哪个模块用于执行数学运算?A. mathB. mathsC. calculateD. mathlib答案:A. math7. 在Python中,以下哪个函数用于将字符串转换为浮点数?A. int()B. float()C. str()D. floatint()答案:B. float()8. Python中,以下哪个循环结构用于遍历序列?B. whileC. doD. repeat答案:A. for9. 在Python中,以下哪个关键字用于跳过当前循环的迭代?A. breakB. continueC. passD. skip答案:B. continue10. Python中,以下哪个函数用于计算一个数的平方根?A. sqrt()B. square()C. root()D. power()答案:A. sqrt()二、填空题(每题3分,共15分)1. Python中的字符串可以用单引号____或双引号____括起来。

python软件编程等级考试(二级)编程实操题优质

python软件编程等级考试(二级)编程实操题优质

python软件编程等级考试(二级)编程实操题优质一、选择题1.在Python中,设a=2,b=3,表达式a>b and b>=3的值是()A.1 B.-1 C.True D.False2.在Python语言中,数据的输入是通过()来实现的。

A.input( )函数B.print( )函数C.output( )函数D.abs( )函数3.在Python中要生成随机数,应该使用()。

A.math 模块B.random模块C.numpy 模块D.pygame 模块4.要利用Python通过数组绘制拟合曲线图,必须要用到的外部库是()A.time库B.random库C.turtle库D.matplotlib 库5.若用整型变量k表示某天是星期几(例如k=1表示该天是星期一、k=2表示该天是星期二……k=7表示该天是星期天),则下列能够正确表示k的下一天是星期几的python表达式为()A.k+1 B.k % 7 + 1 C.(k+1) %7 D.(k+1)%7-16.以下Python代码输出结果中说法正确的是( )。

x=0for i in range(1,100):x=x+iprint(x)A.1+100的和B.1+99的和C.1~99所有整数的和D.1~100所有整数的和7.以下哪种语言属于高级程序设计语言()①python ②c++ ③visual basic ④javaA.①②③B.②③C.②③④D.①②③④8.下列Python程序运行后的输出结果是( )。

s=0for i in range(1,5):s=s+iprint("s=",s)A.s=5 B.s=6 C.s=10 D.s=159.以下()是python文件A.*.mp3B.*.xls C.*.ppt D.*py10.在Python中print(8+7%2**2)的执行结果是()A.5 B.1 C.6 D.1111.在Python中,返回x的绝对值的函数是()。

python二级考试真题答案

python二级考试真题答案

python二级考试真题答案一、单项选择题1. Python中,以下哪个关键字用于定义类?A. classB. defC. functionD. method答案:A2. 在Python中,以下哪个函数用于获取列表中元素的个数?A. len()B. count()C. size()D. length()答案:A3. Python中,以下哪个模块提供了文件操作相关的函数?A. sysB. osC. mathD. file答案:B4. 在Python中,以下哪个函数用于将字符串转换为浮点数?A. int()B. float()C. str()D. list()答案:B5. Python中,以下哪个关键字用于定义函数?A. defB. functionC. classD. method答案:A二、多项选择题1. Python中,以下哪些数据类型是可变的?A. listB. tupleC. dictD. set答案:ACD2. 在Python中,以下哪些方法可以用于字符串的连接?A. 使用加号(+)B. 使用逗号(,)C. 使用join()方法D. 使用format()方法答案:ACD3. Python中,以下哪些关键字用于控制流程?A. ifB. elseC. forD. while答案:ABCD三、编程题1. 编写一个Python函数,计算并返回一个列表中所有偶数的和。

```pythondef sum_even_numbers(numbers):return sum(num for num in numbers if num % 2 == 0)```2. 编写一个Python程序,实现一个简单的计算器,能够进行加、减、乘、除运算。

```pythondef simple_calculator(operation, num1, num2):if operation == '+':return num1 + num2elif operation == '-':return num1 - num2elif operation == '*':return num1 * num2elif operation == '/':if num2 != 0:return num1 / num2else:return "Error: Division by zero!"else:return "Invalid operation"# 示例使用print(simple_calculator('+', 5, 3)) # 输出:8print(simple_calculator('*', 4, 2)) # 输出:8```结束语:以上是Python二级考试的部分真题及答案,希望对您的学习和备考有所帮助。

2024年9月青少年软件编程Python等级考试二级真题试卷(含答案和解析)

2024年9月青少年软件编程Python等级考试二级真题试卷(含答案和解析)

2024年9月青少年软件编程Python等级考试二级真题试卷(含答案和解析)题数:37 分数:100一、单选题(共25题,共50分)。

1.以下代码的输出是?()a = ['甲','乙','丙','丁','子','丑']print(a[4])A. 丁B. ['丁']C. ['子']D. 子答案:D。

解析:列表的下标从0开始,所以是第五个元素'子',元素是不带[]的,所以选D。

2.语句的运行结果是?()A. '新,年,快,乐'B. '新年快乐'C. '新年快乐'D. '新、年、快、乐'。

答案:A。

解析:本题考察的是字符串方法,该方法的作用是在iter变量除最后元素外每个元素后增加一个str。

例如结果为"1,2,3,4,5"。

3.语句的运行结果?()A. 'I like program'B. 'I like programming'C. 'I like programing'D. "I like programmming"答案:B。

解析:本题考察的是方法,该方法的作用是返回字符串str副本,所有old子串被替换为new。

4.题ls = ['a', 'b', 'c', 'd', 'e'],下列哪个选项可以将ls中的元素顺序整体反转?()答案:C。

解析:本题考察的是列表元素的反转操作,该操作的方法是reverse()。

5.已知stu = {"一班":"杨思甜", "二班":"赵柏瑞", "三班":"王一乐", "四班":"刘道林"},则输出所有班级及对应姓名(键值对)的命令是?()答案:C。

python二级考试试卷及答案

python二级考试试卷及答案

python二级考试试卷及答案一、选择题(每题2分,共20分)1. 在Python中,以下哪个是正确的字符串格式化方法?A. "Hello, %s" % "World"B. "Hello, {0}".format("World")C. "Hello, {1}".format("World")D. "Hello, {}".format("World", "Earth")答案:B2. 下列哪个选项是Python中的列表?A. [1, 2, 3]B. (1, 2, 3)C. {1, 2, 3}D. 1, 2, 3答案:A3. Python中,以下哪个函数用于计算列表中元素的总和?A. sum()B. total()C. add()D. aggregate()答案:A4. 在Python中,以下哪个关键字用于定义类?A. classC. defD. struct答案:A5. 下列哪个选项是Python中的字典?A. {1: "one", 2: "two"}B. [1: "one", 2: "two"]C. (1: "one", 2: "two")D. 1: "one", 2: "two"答案:A6. 在Python中,以下哪个模块用于执行文件操作?A. fileB. osC. sysD. io答案:D7. Python中,以下哪个方法用于获取列表中的最后一个元素?A. last()B. end()C. tail()D. pop()答案:D8. 在Python中,以下哪个关键字用于定义函数?B. defC. funcD. method答案:B9. Python中,以下哪个模块用于生成随机数?A. randomB. randC. randintD. randomize答案:A10. 下列哪个选项是Python中的元组?A. (1, 2, 3)B. [1, 2, 3]C. {1, 2, 3}D. 1, 2, 3答案:A二、填空题(每题2分,共20分)1. Python中的整数除法运算符是____。

Python(二级)考试题+答案

Python(二级)考试题+答案

Python二级考试题一、单项选择题(每题1.5分,共30分)1.下列哪个关键字可以起到终止循环的作用(C)A、continueB、whileC、breakD、with2.已知列表num=[8,9,2,7,3,5,6,4],运行print(num[::2]),结果是(D)A、8,9,2B、[8,9,2]C、8,2,3,6D、[8,2,3,6]3.运行下列代码,可知a的取值范围为(A)import randoma=random.randint(1,100)A、1≤a≤100B、1≤a≤99C、0≤a≤99D、1<a≤1004.下列哪个自定义列表名称符合规则(C)A、%32B、5alrightC、_numD、not5.执行下列代码的结果为(B)list_1=[37,23,66,54,27,19,88,32]print(len(list_1))A、[37,23,66,54,27,19,88,32]B、8C、len(list_1)D、76.运行下列程序,当输入Tom时,运行结果为(B)name=["Tom","Jerry","Tony","Lisa","Paul"]a=input("输入要查询的姓名:")if a not in name:print("yes!")else:print("no!")A、“yes!”B、“no!”C、程序报错D、True7.下面哪个指令是清空列表内容(D)A、list.insert(数据,索引)B、list.sort()C、del list[数据]D、list.clear()8.运行下列代码的结果是(C)list_1=[37,23,66,54,27,19,88,32]if36in list_1:print("happy!")else:print("unhappy!")A、happy!B、TrueC、unhappy!D、False9.运行下列代码,不可能出现的结果是(B)for a in range(1,8):print(a)A、5B、8C、1D、710.如果要使列表list_1由[9,32,44,5,27,88,10]变为[88,44,32,27,10,9,5],需要用到的操作是(D)A、list_1.insert()B、list_1.sort()C、max(list_1)D、list_1.sort(reverse=True)11.下列对于循环嵌套描述正确的是(D)A、for循环只能嵌套for循环B、for循环只能嵌套while循环C、while循环只能嵌套while循环D、for循环和while循环之间可以互相嵌套12.执行下列代码的结果是(C)tuple=("小明","小红","小白","小亮","小黄")del tuple[2]print(tuple)A、("小明","小白","小亮","小黄")B、("小明","小红","小亮","小黄")C、程序报错D、("小明","小红","小白","小黄")13.想要查询列表list_1=[99,32,23,55,45,65,12]中一共有多少个数据,可以用到的指令是(C)A、list_1.sort()B、max(list_1)C、len(list_1)D、list_1.clear()14.下列集合名称的命名哪一个不符合规范的(A)A、continueB、_jxy3C、A5B6D、setup15.以下哪个指令是找出列表中所有数据中最小值的指令(D)A、list.remove()B、max(list)C、len(list)D、min(list)16.下列哪个指令可以判断a是否为奇数(B)A、a//2=1B、a%2=1C、a/2=1D、a**2=117.运行代码print("good"+"morning")后,正确的结果是(A)A、goodmorningB、good morningC、“good morning”D、good,morning18.如果想让最后的运行结果为11,请问代码第一行s=x中的x应该设为多少(B)s=xfor a in range(1,5):s=s+aprint(s)A、0B、1C、2D、319.如果想从字符串poem=“天生我材必有用”中截取“我必用”三个字,可以采用下列哪项操作(B)A、print(poem[::2])B、print(poem[2::2])C、print(poem[2:])D、print(poem[1:5:2])20.运行下列代码,当输入87时,运行结果为(B)a=int(input("请输入任意整数:"))if a>=10and a<100:if a%2==0:print("成双成对")else:print("独善其身")else:print("天下无双")A、天下无双B、独善其身C、87D、成双成对二、多项选择题(每题2分,共10分)1.下列四组容器哪一组是元组(A、D)A、num=(1,2,3,4,5,6)B、tuple=[1,2,3,4,5,6]C、tuple={1,2,3,4,5,6}D、list=(“a”,”b”,”c”)2.运行下列代码,不可能出现的结果有(B、C、D)for a in range(10,20):if a%2==0:print(a)A、12B、13C、15D、203.执行下列代码,如果要使结果为“XXXX”,那么输入哪些数字可以实现该结果(A、B、C、D)a=int(input("请输入一个自然数:"))for s in range(1,5):if a>=s:print("X",end="")else:print("Y",end="")A、4B、5C、6D、74.以下代码运行结果为15的有哪些(A、B、C、D)A、s=0for a in range(1,6):s=s+aprint(s)B、s=0for a in range(1,8):if a>=6:continues=s+aprint(s)C、s=0for a in range(1,8):s=s+aif a>=5:breakprint(s)D、list_1=[9,27,16,29,33,15,22,35]print(list_1[5])5.超市新进一批水果,将各种水果种类输入电脑系统中生成了列表fruits=["苹果","香蕉","葡萄","菠萝","蛋挞"],但由于工作疏忽,将“柠檬”错输成“蛋挞”,下列哪段代码可以帮助工作人员修正错误(A、B)A、fruits=["苹果","香蕉","葡萄","菠萝","蛋挞"]fruits=fruits[:4]fruits.append("柠檬")print(fruits)B、fruits=["苹果","香蕉","葡萄","菠萝","蛋挞"]fruits[4]="柠檬"print(fruits)C、fruits=["苹果","香蕉","葡萄","菠萝","蛋挞"] fruits=fruits[:4]print(fruits)D、fruits=["苹果","香蕉","葡萄","菠萝","蛋挞"] fruits.insert(4,"柠檬")print(fruits)三、判断题(每题1分,共10分)1.Python的元组中所有的数据必须是同一类型的(错)2.Python的集合中可以出现重复的元素(错)3.执行下面的代码,运行结果为5(对)a={1,1,2,2,3,3,4,4,5,5}print(len(a))4.Python的集合中的元素排列是有序的(错)5.元组中的数据不可以被添加和删除,但可以被替换(错)6.运行下列代码,结果为56(对)s=0for a in range(10,18):if a%2==1:s=s+aprint(s)7.在列表的切片操作中,如果从第一个数据开始截取,那么起始索引可以被省略(对)8.已知字符串string=“两个黄鹂鸣翠柳”,print(string[1:3])结果为“个黄”(对)9.已知字符串a=“Python”,print(a.lower())结果为”PYTHON”(错)10.根据下面的代码可知,如果明天不下雨,可能做的事情有找小明踢球和在家看电视(错)if明天不下雨:if小明有空:print("找小明踢球")elif小红有空:print("找小红看电影")else:print("在家看电视")四、编程题(共50分)1.报名查询系统(20分)六年级一班组织英语口语大赛,同学们都踊跃报名,目前英语老师已经拿到了一份报名名单,请帮英语老师设计一款程序,输入学生姓名后能够查询该姓名是否已在名单中,如果在的话,输出”已成功报名”,否则就将该学生姓名添加进名单并输出新名单。

全国计算机等级考试二级Python真题及解析【最新版】

全国计算机等级考试二级Python真题及解析【最新版】

全国计算机等级考试二级Python真题及解析1.下面不属于软件工程的3 个要素的是___________。

A过程B方法C环境D工具正确答案: C2.下面不属于软件设计原则的是___________。

A模块化B自底向上C信息隐蔽D抽象正确答案: B3.在关系数据库中,用来表示实体之间联系的是___________。

A网结构B二维表C线性表D树结构正确答案: B4.一般情况下,当对关系R 和S 进行自然连接时,要求R 和S 含有一个或者多个共有的___________。

A属性B元组C记录D行正确答案: A5.有表示公司和职员及工作的三张表,职员可在多家公司兼职。

其中公司c(公司号,公司名,地址,注册资本,法人代表,员工数),职员s(职员号,姓名,性别,年龄,学历),工作w(公司号,职员号,工资),则表w 的键(码)为___________。

A公司号,职员号,工资B职员号C职员号,工资D公司号,职员号正确答案: D6. 下列叙述中正确的是___________。

A栈是一种先进先出的线性表B栈与队列都是非线性结构C队列是一种后进先出的线性表D栈与队列都是线性结构正确答案: D7. 下列叙述中正确的是___________。

A线性表的链式存储结构所需要的存储空间一般要少于顺序存储结构B线性表的链式存储结构所需要的存储空间一般要多于顺序存储结构C线性表的链式存储结构与顺序存储结构所需要的存储方式是相同的D线性表的链式存储结构与顺序存储结构所需要的存储空间是相同的正确答案: B8. 算法的有穷性是指___________。

A算法只能被有限的用户使用B算法程序所处理的数据量是有限的C算法程序的运行时间是有限的D算法程序的长度是有限的正确答案: C9.软件设计中划分模块的一个准则是___________。

A高内聚高耦合B低内聚高耦合C高内聚低耦合D低内聚低耦合正确答案: C10.耦合性和内聚性是对模块独立性度量的两个标准。

国家计算机二级python操作题

国家计算机二级python操作题

国家计算机二级python操作题一、单选题(每题1分,共10分)1. Python是一种广泛使用的______。

A. 编译型语言B. 解释型语言C. 标记语言D. 汇编语言2. 在Python中,以下哪个是合法的变量名?A. 2variableB. variable-nameC. variable_nameD. variable-name23. 下列哪个是Python中的内置数据类型?A. ListB. TupleC. DictionaryD. 所有选项4. 在Python中,以下哪个语句用于定义函数?A. define function my_function():B. function my_function():C. def my_function():D. None of the above5. Python中的异常处理是通过使用______语句实现的。

A. tryB. catchC. finallyD. A6. Python中的列表推导式是用于______。

A. 列表的复制B. 列表的排序C. 创建列表D. 列表的删除7. 在Python中,以下哪个是正确的字典推导式?A. {key: value for key, value in dict.items()}B. dict(key, value)C. dict = {key: value}D. None of the above8. 下列哪个是Python中的文件操作模式?A. 'r'B. 'w'C. 'a'D. 所有选项9. Python中的装饰器是一种______。

A. 函数B. 类C. 变量D. 模块10. 在Python中,以下哪个是正确的字符串格式化方法?A. %sB. .format()C. f"{value}"D. 所有选项二、多选题(每题2分,少选、多选、错选均不得分,共10分)11. Python支持以下哪些数据结构?A. 数组B. 列表C. 元组D. 字典12. 在Python中,以下哪些是合法的导入模块方式?A. import module_nameB. from module_name import functionC. from module_name import *D. None of the above13. Python中的文件对象通常具有哪些方法?A. open()B. read()C. write()D. close()14. 在Python中,以下哪些是有效的循环结构?A. forB. whileC. do-whileD. None of the above15. Python中的类可以包含以下哪些元素?A. 方法B. 属性C. 继承D. 接口三、判断题(每题1分,共10分)16. Python是一种静态类型语言。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1.101描述参照代码模板完善代码,实现下述功能。

输入一个字符串,其中的字符由(英文)逗号隔开,编程将所有字符连成一个字符串,输出显示在屏幕上。

输入输出示例答案:要点:1. 题目要求输入的字符用逗号隔开,所以,需要用到split(',')来从字符串里提取所输入的字符2. 经过split()函数的字符串,返回的是列表3. 字符串有个操作函数是str.join(ls),可以把列表里的各个元素,用str的内容连接起来。

本题利用了空字符串‘’,来调用这个函数,因此,达到了所想要的效果:将带有逗号的字符串变换成了没有逗号的字符串。

4. 有一个不可忽视的地方是join()函数的括号里的参数是列表,如果忘了这一点,会犯错5. 这个功能利用好了,可以拓展,解决其他的问题。

2.102描述参照代码模板完善代码,实现下述功能。

有一个列表studs 如下:studs=[{'sid':'103','Chinese':90,'Math':95,'English':92},{'sid':'101','Chinese':80,'Math':85,'English':82},{'sid':'102','Chinese':70,'Math':75,'English':72}]将列表studs 的数据内容提取出来,放到一个字典scores 里,在屏幕上按学号从小到大的顺序显示输出scores 的内容。

内容示例如下:101:[85, 82, 80]102:[75, 72, 70]103:[95, 92, 90]输入输出示例答案:studs=[{'sid':'103','Chinese':90,'Math':95,'English':92},{'sid':'101','Chinese': 80,'Math':85,'English':82},{'sid':'102','Chinese': 70,'Math':75,'English':72}]scores ={}for stud in studs:sv = stud.items()v =[]for it in sv:if it[0]=='sid':k = it[1]else:v.append(it[1])scores[k]= v# print(scores)so =list(scores.items())so.sort(key =lambda x:x[0],reverse =False)for l in so:print('{}:{}'.format(l[0],l[1]))studs= [{'sid':'103','Chinese':90,'Math':95,'English':92},{'sid':'101','Chinese':80,'Math':85,'English':82},{'sid':'102','Chinese': 70,'Math':75,'English':72}] lit=[]for i in studs:lst=[]a=i.get('sid')lst.append(i.get('Chinese'))lst.append(i.get('Math'))lst.append(i.get('English'))lst.sort(reverse=True)lat=[]lat.append(a+":")lat.append(str(lst))lit.append(lat)lit.sort()for i in lit:print("".join(i))要点:1. 字典作为元素,定义在列表里,用列表的遍历就可以从中提取出来2. 提取出来的元素直接就是字典,因此可以用items()直接获取,形成键值对对象集合sv;3. 对键值对对象集合sv遍历,就可以以元组it的方式访问其中的每一对键值对,sv = stud.items(),是第一个空的答案;4. 题目要求提取学生的学号,所以需要比较键it[0]是否是'sid',是则将学号it[1]提取出来作为新的字典scores的键k;不是则将成绩提取出来作为新字典scores 的值v;5. 由于课程是多门,因此新字典scores的值v需要以列表的方式,保存各门课程的成绩,所以在不是的情况下,新字典scores的值v是利用append(it[1])的方式,追加到列表的后面;6. 对v做append操作,必须要事先定义v是一个空列表;因此需要在对每一条旧字典stud的键值对信息做处理的for it in sv:语句之前,用v = []初始化v为一个空列表;7. 经过对一条字典stud的处理,就形成一对k和v,所以接下来是给新字典scores添加一条键值对,scores[k] = v,是第二个空的答案8. 经过对全部的studs列表里的各条字典处理完之后,新的scores字典就全部生成。

9. 题目要求按学号从小到大的顺序输出学号和成绩,所以需要对字典的键值对内容items()提取到列表so里,此处是第三个空的答案:so = list(scores.items()) 10. 用Lambda函数进行排序。

这个不在考试范围里,所以代码模板直接给出语句;11. 对排好序的列表输出每组列表,这个直接给出语句,不再赘述。

3.103描述参照代码模板完善代码,实现下述功能。

从键盘输入一个用于填充的图符,一个字符串,一个要显示的字符串的总长度;编程将输入的字符串,居中输出显示在屏幕上,用填充图符补齐到输入的总长度。

如果总长度处输入的不是正整数,则提示请输入一个正整数,并重新提示输入,直至输入正整数。

输入:请输入填充符号:@请输入要显示的字符串:qq请输入字符串总长度:r请输入一个正整数请输入字符串总长度:3.4请输入一个正整数请输入字符串总长度:4输出:@qq@输入输出示例答案:#请在____处填写一行代码#请在… 处填写多行代码#不要修改已给出代码a =input()# 请输入填充符号c =input()# 请输要显示的字符串flag =1while flag:try:b =eval(input())# 请输入字符串总长度except:flag =1print("请输入一个正整数")else:if type(b)==int and b>0:flag =0else:flag =1print("请输入一个正整数")print('{0:{1}^{2}}'.format(c,a,b))4.201描述参照代码模板完善代码,实现下述功能,不得修改其它代码。

使用turtle 库的turtle.fd() 函数和turtle.seth() 函数绘制螺旋状的正方形,正方形边长从1 像素开始,第一条边从0 度方向开始,效果如下图所示。

---------------------------------------------------------------自动评阅说明使用字符串形式输出____①____,____②____,____③____中应填代码即可以自动评阅得分例如,如果代码为:# 代码模板 | # 你的代码import turtle |import turtled =0| d =0for i in range(__1__):|for i in range(1):turtle.fd(__2__)| turtle.fd(100)d = __3__ | d =(i +100)*100turtle.seth(d)| turtle.seth(d)则在提交代码页面输入:print('1','100','(i + 100) * 100')提交后即可以查看得分注:如果有运算符,请在运算符两侧加上空格习题讲解答案:import turtled =0k =1for j in range(10):for i in range(4):turtle.fd(k)d +=91turtle.seth(d)k += 2turtle.done()要点:1. 降低了难度,让填写的都是最简单的5.202描述参照代码模板完善代码,实现下述功能,可以修改其它代码。

附件文件question.txt 中有一道Python 选择题,第1 行的第1 个数据为题号,后续的4 行是4 个选项。

示例内容如下:3. 以下关于字典类型的描述,错误的是:A. 字典类型中的数据可以进行分片和合并操作B. 字典类型是一种无序的对象集合,通过键来存取C. 字典类型可以在原来的变量上增加或缩短D. 字典类型可以包含列表和其他数据类型,支持嵌套的字典读取其中的内容,提取题干和四个选项的内容,利用jieba 分词并统计出现频率最高的3 个词,其中要删除以下的常用字和符号“的,::可以是和中以下B”,作为该题目的主题标签,显示输出在屏幕上。

输入输出示例答案:import jiebafi =open("question.txt",'r')con =''num =0for l in fi:l=l.replace('\n','').strip().split('.')# print(l)try:ft =eval (l [0])except:passelse:num = ftcon += l [1]print('第{}题的主题是:'.format(num))conls = jieba.lcut(con)dict={}for word in conls:dict[word]=dict.get(word,0)+1dictls =list(dict.items())dictls.sort(key =lambda x:x[1], reverse =True)k =0for it in dictls:if it[0]in'的,::可以是和中以下B':continueelse:if k ==3:breakelse:print('{}:{}'.format(it[0],it[1]))k +=1fi.close()要点:1. 导入jieba库,使用lcut分词,返回列表conls2. 打开文件,读文件,关闭文件3. 按行从文件里读,每一行是一个字符串,用strip和split处理成列表,因为要识别题号,还要提取题目和选项的内容,所以要按照'.'分隔来提取,分别返回题号和选项号作为列表l的第0个字段,后面的内容是列表l的第一个字段;4. 为了识别题号,要利用eval,并逆向利用try-except结构捕捉第一个字段是整数的字段,把题号提取出来放到num里面,把其他的内容都用字符串加法,拼成一个大字符串con5. 给出第一句显示:print('第{}题的主题是:'.format(num))6. 接下来处理con,提取整个题干的主题词:7. 用jieba分词,然后用字典dict来保存没个词出现的次数。

相关文档
最新文档