NCT编程能力等级Python(三级)考试小结
下午2点参加并完成了NCT编程能力等级Python三级的资格认证考试,本次考试时长跟二级一样,都是1个半小时。总体难度10分的话,个人感觉在6分左右,应该算是比较容易的。考试范围基本都在官方出版的《NCT全国青少年编程能力等级测试教程》这本书之中,题型分为20道选择和3道操作,满分100,下面具体说说所记得的一些题目内容。
一、选择题 (列举)
属于映射类型的是字典(map),其他选项有元祖、列表等干扰信息
提问[ [x, x, x], [y, y, y], [z, z, z] ]是几维数据,答案是二维。二维数据是由多个一维数据构成,是一维数据的组合形式。
给你一个元组tup,问你哪个选项是错误的。其中tup[1] = 4的选项是错误的,因为元组不可修改,自然也就不能被赋值,因此去给元组赋值就是错误的。
字典中不能用列表作为key(键),因为列表是可变类型,而key必须是不可变类型,如数字、字符串或元组,所以用列表做key是错误的。
集合的基本操作,如交集,差集等,集合的基本操作,如添加新元素,删除元素
csv数据格式的写入,如果写入的是列表,就用writerows方法,干扰项有writerow
一个字典被dumps成json格式后,问你是什么数据类型,答案是str,即字符串类型
re库处理文本,给你一个字符串s = "This is...",问你match(r"is", s)的返回结果,答案应该是None,虽然字符串中含有"is"这个单词,但match是从头开始匹配,而开头是"This",所以匹配不到,返回的结果应该就是None
数据爬取,问你哪个表述是错误的,其中说到cookie不是唯一的身份标识,是错的
哪个是表示文档标题的HTML格式,要选<title>,它才是描述文档个的标题
给你一数组 arange(12),然后再reshape((3, 4))。考点有2个,1是arange(12)的数据是0~11;2是reshape((3, 4)),是把数组形状变为3行4列,答案自然就显而易见了。
Image(图形)类的基本属性,哪个是查看图像的色彩模式,用的是mode
暂且分享以上选择题,若有再回忆起来,再继续补充
二、操作题
考察字典的操作。给你六1、六2、六3三个班级,再给你三个班级的人数,要求用字典的形式存储。接着要求修改六2班的人数,再增加六4班及人数,最后打印该字典里的班级和人数。
判断手机号码是否属于联通的号码,要求用re模块来做,首先输入11位的手机号,这边我多做了判断用户输入是否为11位,然后开头是130~133[ 可以用match(r"13[0-3]") ],并且结尾是4122的手机号[ 可以用rearch(r"4122$") ,$表示结尾],则为联通号码。
给你一个friends列表,里面存有三个字典,每个字典就只有一对键值对,类似{'人名': 数字},然后要求你先提示输入人名及数字(用空格隔开),接着在每个字典中查询,找到该名字后,再把字典里的数字改成你之前输入的数字。思路是,先用split(" ")将输入的人名和数字存入列表lt中(因为它们是用空格隔开的),然后lt[0]就是人名,lt[1]就是数字。接着 for i in friends 循环遍历列表,判断 i.keys() [ i.keys()就是字典里的人名 ]是否与 lt[0] 相等,相等的话,就修改相应的数值即可,如果找不到,我多做了一个提示,没有该人名。