【江苏二级Python】8套历年真题及答案

评分细则

基础知识 2 * 10 =20
程序设计 2 * 15(空) =30
操作题
1 (填空):2 * 3 =6
2(填空)2 * 3 =6
3 (填空):4*4 =16
4 、5 人工评分 做多少给多少22

江苏二级Python第一套

单选(基础知识)

1.根据不同的应用需求,数字音频采用的编码方法有多种,文件格式也各不相同。下列的音频格式中,由微软公司开发的,采用末压缩方法编码的是WAV

答案是:A解析:MP3是一种音频压缩技术,由于这种压缩方式的全称叫MPEG AudioLayer3,所以人们把它简称为MP3,WMA是微软制订的音频压缩文件格式,比mp3标准晚,比mp3还小,比mp3音质还好, WAV是微软公司(Microsoft)开发的一种声音文件格式,采用未压缩编码方式。

2.下列有关lP地址(IPv4)和路由器的叙述中,错误的是_A
A.每个IP地址使用32个字节的二进制数表示,在使用中通常写成“点分十六进制”的形式 在使用中通常写成"点分十进制"
B.IP地址分为五类,其中A类、B类和C类是三个基本类,每类有不同长度的网络号和主机号
C. IP地址空间的分配由国际组织ICANN负责,目前IP地址空间已分配完毕
D.路由器是连接异构网络的关键设备,一台路由器会拥有(使用)多个不同的IP地址

3.字符集及其编码是计算机中表示、存储、处理和交换文本信息的基础,但由于历史原因,目前不同系统或应用中使用的字符编码方案并不统一。下列期码方案中,所有字符作来用等长编码〈编码长度相同)的是GB2312

答案是:A解析: GB2312编码:是我国1981年颁布的第一个国标,该标准选出6763个常用汉字和682个非汉字字符,所有字符采用2字节编码;
GB18030:包含汉字23940个,与GB2312与GBK保持兼容。同时与UCS也接轨,在我国信息处理产品中强制执行,ASCII采用1字节编码,汉字采用2字节编码,其他采用4字节编码; UCS:国际标准化组织(ISO)制定了一个将全世界所有文字与符号集中进行统一编码,称为UCS,与其等同的是由微软等公司共同制定的工业标准Unicode,UCS有两种标准UTF-8和UTF-16,
UTF-8采用ASCII码用1个字节编码,拉丁字母,标点符号等采用2字节编码,汉字采用3个字节编码,其他极少字符采用4字节编码,
UCS-16是指ASCII和汉字都采用2字节编码,其他不常用字符采用4字节编码,在Windows中文版上现在使用UTF-16,也是Java,.NET软件开发环境等默认的编码标准。

4.TCP/IP模型将计算机网络分成下列4层,每一层都包含若干个协议。在TCP/IP模型中,HTTP协议工作在应用层
在这里插入图片描述
答案是:D解析: TCP/IP包括了100多个协议,将通信问题划分为四个层次,从高到低依次是应用层、传输层、网络互连层、网络接口与硬件层,
应用层规定了运行在不同主机上的应用程序之间如何通过互连的网络进行通信,包括的协议如HTTP,SMTP,FTP,TELNET等;
传输层规定了怎样进行端-端的数据传输,有TCP和UDP两个协议,TCP协议负责可靠的完成数据从发送计算机到接收计算机的传输,UDP是不可靠的数据传输协议,例如音频和视频数据的传输**;
网络互连层规定了在整个互连的网络中所有计算机统一使用的编址方案和数据包格式(称为IP**数据报),以及IP数据报的转发机制;
网络接口与硬件层规定了怎样与各种不同的网络进行接口,并负责将IP包转换成适合在特定网络中传输的帧格式。

5.下列有关计算机网络组成、分类和工作模式等叙述中,错误的是_A_。
A.按网络所覆盖的地域范围来分,人们常将计算机网络分为LAN、ATM、WLAN等类型 分为局域网(LAN)、城域网(MAN)、广域网(WAN)
B.有些广域网是一些机构或组织自行构建的专用网,有些是网络运营商构建的公用数据网
C.网络协议是计算机网络的重要组成部分,目前互联网主要采用TCP/IP协议系列
D.计算机网络有两种基本工作模式,即P2P工作模式和c/s工作模式

6.下列有关计算机的逻辑组成和分类的叙述中,错误的是_C
A.一台计算机中往往有多个处理器,它们各有其不同的处理任务,其中CPU是核心部件
B.主存储器与CPIu高速连接,用来存放已经启动运行的程序代码和需要处理的数据
c.人们提及PC时,泛指台式机、笔记本电脑、智能手机和平板电脑等个人使用的计算机 智能手机不是PC机
D.嵌入式计算机是内嵌在其他设备中的专用计算机,许多嵌入式计算机都把软件固化在芯片中

7.字符集及其编码是计算机中表示、存储、处理和交换文本信息的基础,但由于历史原因,目前不同系统或应用中使用的官符编码方案并不统一。下列蚂码方案中,目前在我国言息处理产品中强制贯彻执行的是GB18030

8.在现代通信系统中,为了能有效地提高数据链路的利用率、降低通信成本,一般使用多路复用技术让多路信号同时共用一条传输线进行传输。用户通过电诋线使用AORc技术接入互联网时,ADSL技术接入方式主要是使用了
FDM
答案是:C解析:
时分多路复用(TDM)是各终端设备按不同时间来轮流使用同一线路来传输数据,是计算机网络传输使用的主要方式,
频分多路复用(FDM)是将不同信源发出的信号调制在不同频率的载波上,
波分多路复用(WDM)是在一根光纤传输不同波长的光波。
码分(CDM)是指每个用户分配一个地址码,各个码型互不重叠,通信各方之间不会相互干扰,且抗干拢能力强。
9.光盘是目前常见的辅助存储器。下列相关叙述中,错误的是_
A.光盘存储器由光盘驱动器和光盘片两部分组成,光盘的基片是铝合金材料 基片是耐热的有机玻璃
B.从接口来看,目前内置DVD光驱与主机的接口主要是sATA,外置的主要是USB
C.DW光盘分为单面单层、单面双层等多种类型,目前最常用的是单面单层的盘片
D.BD光驱采用波长较短的蓝色激光在光盘上进行数据读写,因而提高了光盘存储容量

10.在微软公司的office软件中内置了一种程序设计语言,用户可以使用它来编写程序以扩展功能。该语言是VBA

答案是:A解析: VBA用于编写程序来扩展Office软件的功能,
VBScript用于嵌入到Html文档中以扩充网页的功能,
Java用于网络编程,包括编写安卓智能手机的App,
Object-C语言是iPhone和iPad编程的语言,
Lisp语言与PROLOG语言主要用于人工智能,
Ada语言用于飞行器控制,
MATLAB是一种面向向量和矩阵运算的数值计算语言。

程序设计

1.以下选项中关于函数的叙述正确的是_
使用函数的目的是代码重用和降低编程难度

2.sciPy软件生态系统中定义DataFrame数据类型的库是_
pandas 创建DataFrame对象使用panda的DataFrame()函数

3.以下程序的输出结果是

d="准考证号":"2019001","考试科目":"Python","成绩":80}
print(d["准考证号"], d.get("成绩" ,90), sep = ',')
2019001 80

4.A在这里插入图片描述
答案是:A解析:B错,s里面有3个元素,其下标分别是0,1,2是不存在3的;C错,s[-1]的值表示最末尾的元素,所以是True, s[-2]的值为" Kate"; D选项属于元组,是不能修改里面的数据的。

5.以下选项中,全是Python3.x中的内建函数的是_int float list

答案是:B解析:Python中的函数分为内建函数,标准库函数、第三方库和自定义函数,内建函数是指不需要进行外部导入就可以直接使用的函数,本题中的内建函数是next range intfloat list pow round input open 。
sort sqrt close 不是内建函数 math.sqrt list.sort file.close

(以上为单选)
6.执行以下程序,输出结果第一行是 12
第二行是 369

def demo(v,n)
	result,t=0,0
	for i in range(n):
		t=t*10+v
	return result
print(demo(1,2))
print(demo(3,3))

答案:
1+11 =12
3+33+333=369

7.请完善以下这条语句实现功能:输出100以内的正整数中所有奇数之和

print()

答案:

print(sum(range(1,100,2)))

8.执行以下程序,输出结果是 Btfl

def func(s):
 if s=='':
 return s
if s[0].lower() in "aeiou":
  return func(s[1:])
else:
 return s[0]+func(s[1:])
print(func("Beautiful")) 

fun()目的是剔出“aeiou”

结果是 Btfl

9.执行以下程序,输出结果是

def cacluate(*num):
	lst=[]
	avg = sum(num)/len(num)
	for x > avg:
		if x > arg:
			lst.append(x)
	return lst
cout = cacluate(10,11,12,13,14)
print(count)

将大于(10,11,12,13,14)/5 =12的数放到一个列表里
结果是[13,14]
10.执行以下程序,输出结果第一行是
第二行是

def func(x)
	i = 2
	r=[]
	while x > 1:
		if x%i ==0:
			if i not in r:
				r.append(i)
			x //= i
		else:
			i+=1
	return r
lst=[49,60]
for x in lst:
	print(func(x))

函数是用来分解质因子的。结果是 第一行[7] 第2行[2,3,5]
在数论里是指能整除给定正整数的质数。根据算术基本定理,不考虑排列顺序的情况下,每个正整数都能够以唯一的方式表示成它的质因数的乘积。
在这里插入图片描述
11.完善以下列表解析式 ,使其生成列表[(1,3),(1,4),(2,3),(2,1),(2,4),(3,1),(3,4)]

[(x,y) for x in [1,2,3] for y in [3,1,4] if_____]

只有x y 不相等的组合在一起了

[(x,y) for x in [1,2,3] for y in [3,1,4] if x!=y]

12.执行以下程序,输出结果第一行是_______
第二行是__________

s1 ={1,2,3,4,5}
s2 ={2,3,5,6}
print(s1-s2)
print(s1^s2)

s1-s2 指 在s1 不在s2
s1^s2 指 只在s1 或只在s2 的元素

{1,4}
{1,4,6}

操作题

在这里插入图片描述
待完善的程序

def func(string):
    s = string.lower()
    dic = {}
    for ch in s:
        if ch.isalpha():
            if ch not in dic.keys(): 
                dic[ch] = __________       
            else:
                dic[ch] += 1
    result = sorted(dic.__________(), key = lambda x:x[1], reverse = True)   
    for k, v in result:
        print(k, v)

func("Apple app!")

reverse = True 倒序 默认升序
key = lambda x:x[1] #对第二个字段排序 [0]是对第一个字段排序
找到一个字母给1
1) 1
2)items

在这里插入图片描述

def func(num, k):
    num = list(num)
    for i in range(k):
        for j in range(len(num)-1):
            if num[j] > __________:    
                num.pop(j)
                break
        else:
          num.pop()                 
    result = 0
    for i in num:
        result = result*10+eval(i)
    return result

if __name__ == "__main__":
    num, k = eval(input("Enter an integer and digits: "))
    result = func(str(num), k)
    with open("T:\\myf.out", __________) as fp:
        fp.write(str(result))

1)num[j+1]
2) “w”
3.
在这里插入图片描述
【含有错误的源程序】

def isPrime(n):
    if n < 2:
        return False
    for i in range(2, int(n**0.5)):
        if n%i == 0:
            return False
    return True
def f(s):
    lst = []
    for i in range(len(s)):
        for k in range(i+1, len(s)+1):
            subStr = s[i, k]
            if isPrime(int(subStr)) or subStr not in lst:
                lst.append(subStr)
    return lst

if __name__=="__main__":
    s = input("Enter an integer string: ")
    f(s)  
    if result:
        print(",".join(result))

改错:
参考答案
(1) for i in range(2, int(n0.5))修改为for i in range(2, int(n0.5)+1)
(2) subStr = s[i, k]修改为subStr = s[i: k]
(3) if isPrime(int(subStr)) or subStr not in lst: 修改为if isPrime(int(subStr)) and subStr not in lst:
(4) f(s) 修改为 result= f(s)

在这里插入图片描述

#参考答案
f=[0]*20
f[0]=1
f[1]=1
print(f[0],end=' ')
print(f[1],end=' ')

for i in range(2,20):
  f[i]=f[i-1]+f[i-2]
  print(f[i],end=' ')

在这里插入图片描述
在这里插入图片描述

#参考答案
def seachAcqu(name,dct):
  lst = []
  for i in dct.keys():    
    if i==name:          
          for k in dct[i]:
            if k in dct.keys():
              for j in dct[k]:
                if j not in dct[i] and j!=name:
                   lst.append(j)                
  return lst

if __name__=="__main__":
    dct = {"Xiaojia":["Xiaoyu","Xiaonan","Xiaoyue","Xiaotian"],
     "Xiaoyue":["Xiaojia","Xiaoyun","Xiaoxuan"],
     "Xiaowei":["Xiaokun","Xiaolin","Xiaoxuan"],
     "Xiaoyun":["Xiaoran","Xiaoyue","Xiaoqi"]}
    searchName = input("请输入查找的内容:")
    for name in dct.keys():      
      if name == searchName:
        userName=seachAcqu (searchName,dct)
        if len(userName)>0:
          print("Potential friends are:"+str(userName))
          print("My test ID is 112233")
        else:
          print("No recommendations")
          print("My test ID is 112233")
        break
        
    else:
      print(" No recommendations.")
      print("My Test ID  is  00112233")

江苏二级Python第二套

基础知识

1.Ic卡是“集成电路卡”或“芯片卡”的简称,国外称为chip card或smart card。下列有关Ic卡的叙述中,错误的是 D
A.可以分为存储器卡和cPU卡,前者除了有存储电路外,通常还有写入保护和加密电路
B.可以分为存储器卡和CPBu卡,后者集成了中央处理器、程序和数据存储器
C.可以分为接触式lc卡和非接触式lc卡,相比较来说,前者易磨损、寿命要短一些
D.可以分为接触式lc卡和非接触式lc卡,随着技术进步和成本降低,后者逐渐被淘汰 非接触IC卡将成为主流
2.A
在这里插入图片描述
windows系统内嵌的“记事本”主要用于查看不具有丰富格式的纯文本

3.D
在这里插入图片描述
兼容
4.长期以来,Microsoft公司的Windows操作系统一直是Pc机上使用的主流操作系统。下列windows操作系统产品中,发布最早的是 Windows Me

从早到晚的顺序是Windows Me Windows XP Windows Vista Windows RT
其中 Windows RT是专门为ARM架构的硬件平台设计的

5.在比特的运算中,逻辑加运算1100V0101的结果是1101

逻辑加有任意一位是1即为1

6.A
在这里插入图片描述

7.C
在这里插入图片描述
C
答案是:C解析:目前常用硬盘的盘片直径-般为3.5或2.5英寸和1.8英寸等,3.5主要用于台式PC,2.5主要用于笔记本电脑。
8.
在这里插入图片描述
9. B
在这里插入图片描述
B 不可以通用
10.
在这里插入图片描述

程序设计

在这里插入图片描述
在这里插入图片描述
2.
在这里插入图片描述
3.
在这里插入图片描述
4.
在这里插入图片描述
numpy 中定义的数据类型ndarray
pandas 定义Series DataFrame index
5.
在这里插入图片描述
6.
在这里插入图片描述
已知列表a=[“C+4” “lava”]和b=[97,88],将这两个列表的内容转换为字典,以列表a中的元素为键,列表t中的元素为值,可实现该功能的语句是

dict(zip(a,b))

7.执行以下代码,输出结果是 15

def func(n):
	if n<10:
		return n
	return func(n//10) +n%10
print(func(12345))

在这里插入图片描述
9.
在这里插入图片描述

  1. 4
  2. good day
    用空格将words里面的元素相连

在这里插入图片描述
11.
在这里插入图片描述
注意:range(1,3) 左闭右开 索引值[1] 和 [2] 的元素
12.
在这里插入图片描述
一开始是p 不会连接到#后面 然后s_sub仍为# 不会执行else
然后直到#32 到f 不是数字 也不是# 输出#32 又给s_sub赋为

1)#32
2) #128

操作题

在这里插入图片描述

import _________

x = []
while True:
  if len(x) == 10:
      break
  n = random.randint(1, 100)
  if n not in x:
      _____________

1)random
2)x.append(n)

在这里插入图片描述

def func(n):
    r = ____________
    q = n // 100
    return n // r == (q+1)**2        

if __name__ == "__main__":
    lst = []
    for n in range(1001, 10000):
        if n % 100 != 0:       
             if func(n):
                s = str(n)+":"+str(n //(n % 100))+"=("+str(n // 100)+"+1)^2"+'\n'
                lst.append(s)
    with open("T:\\myf.out", "w") as fp:
        fp.___________(lst)
  1. n%100
  2. writelines

file.write(str)的参数是一个字符串,就是你要写入文件的内容.
file.writelines(sequence)的参数是序列,比如列表,它会迭代帮你写入文件。

3.

在这里插入图片描述
在这里插入图片描述

【含有错误的源程序】

def f(lst_digits):
    for i in range(len(lst)):
        for k in range(i+1, len(lst)+1):
            digits = sum(lst_digits[i:k])
            if digits == n:
                return lst_digits[i:k]
            elif digits > n:
                break
    return None

if __name__ == "__main__":
    n = int(input("Enter an integer(0<n<10): "))
    lst = [1,1]
    lst_digits = [1,1]
    for i in range(2, 10):
        newx = lst[0]+lst[-1]
        lst.append(newx)
        lst_digits.append(len(newx))
    result = f(lst, lst_digits) 
    if result:
        print(''.join([str(x) for x in result])) 

参考答案
(1)def f(lst_digits)修改为def f(lst,lst_digits)
(2) lst_digits.append(len(newx))修改为lst_digits.append(len(str(newx)))
(3)return lst_digits[i:k]修改为 return lst[i:k]
(4)newx = lst[0]+lst[-1]修改为newx = lst[-2]+lst[-1]

在这里插入图片描述

s = input("Enter the string: ")
str=s.split("#",5)
strdic={}
for k in str:
  str1=k.split("-",5)
  strdic[str1[0]]=str1[1]

print("The result dict",end=":")
print(strdic)

split()函数
语法:str.split(str=“”,num=string.count(str))[n]
参数说明:
str: 表示为分隔符,默认为空格,但是不能为空(’’)。若字符串中没有分隔符,则把整个字符串作为列表的一个元素
num:表示分割次数。如果存在参数num,则仅分隔成 num+1 个子字符串,并且每一个子字符串可以赋给新的变量
[n]: 表示选取第n个分片
5.
在这里插入图片描述
在这里插入图片描述

def dailyTemps(temp_list):
    lst_digits=[]
    for i in range(len(temp_list)):
        for k in range(i+1, len(temp_list)):
            if temp_list[i] < temp_list[k]:
                lst_digits.append(k-i)
                break
        else:
           lst_digits.append(0)
                
    return lst_digits

if __name__ == "__main__":
   temp_list = [34,35,33,25,37,29,18,26]
   result = dailyTemps (temp_list) 
   print(result)
   print("My test ID is 5700001")

江苏二级Python第三套

基础知识

在这里插入图片描述
2.
在这里插入图片描述
windows中文版上现在使用UTF-16 也是Java,.NET软件开发环境默认的编码标准
3.
在这里插入图片描述
分组交换技术
4.
在这里插入图片描述
5.在这里插入图片描述
即时通信服务从单一的C/S工作模式逐渐变化为C/S与P2P混合模式
6.
在这里插入图片描述
原码转补码的原则“符号位不变,后面的每一位取反最末位加1”

在这里插入图片描述
8.
在这里插入图片描述
答案是:B解析:
双绞线:成本低,误码率高,传输距离有限,用于固定电话本地回路、计算机局域网;
同轴电缆: 传输特性和屏蔽特性良好,成本高,用于固定电话中继线路,有线电视接入;
光览:传输损耗小,传输距离长,用于电话、电视、计算机网络
9.
在这里插入图片描述
APP是ios手机可执行程序的简称

在这里插入图片描述
TB PB EB ZB YB

程序设计

1.

在这里插入图片描述
axis=0 表示按列相加
axis=1 表示按行相加

在这里插入图片描述
3.
在这里插入图片描述
4.
在这里插入图片描述
5.
在这里插入图片描述

6.

在这里插入图片描述
'A’是否即在aSet又在bSet中
1)False
2) {‘C’}

7.

在这里插入图片描述
list 转化成

[('Mike',(68,86,99)),('Jack',(90,67,88)),('Rose',(84,86,89))]

所以
1)3
2)89

在这里插入图片描述
9.
在这里插入图片描述
10.
在这里插入图片描述
11.
在这里插入图片描述
12.
在这里插入图片描述

操作题

1.

在这里插入图片描述
待完善的程序

def proc(x):
    s = 0
    for n in range(1, x+1):
        t = __________     
        for i in range(1, 5):
            t = __________
            s += t
    return s

if __name__ == "__main__":
    print("{:.4}".format(proc(20)))

参考答案
(1)0
(2)1/(n**i)

在这里插入图片描述
待完善的程序

def gettext(s):
    txt = s.lower()
    for ch in '!"#$@`,。!;:^&*()-_=+[]{},<>.?/;:':
        txt = txt.replace(ch, " ")
    return txt

if __name__ == "__main__":
    string = "Welcome to Python test! It is a good test, win it."
    words = gettext(string).split()
    counts = {}
    for word in words:
        counts[word] = counts._________(word, 0) + 1
    items = list(counts.items())
    items.sort(key = lambda x: x[1],_________)
    print(items)

参考答案
(1)get
(2)reverse=True

字典的get()方法用来替换d[‘key’],后者如果是遇到key不存在会有异常(KeyError),如果使用的d.get(‘key’),key不存在时它返回的是None,你可以指定两个参数如:d.get(‘key’,0),在key不存在的时候,返回0而不是None。

sum[value] = sum.get(value, 0) + 1

3.

在这里插入图片描述
含有错误的源码

from math import sqrt

def validate(n):
    num = str(n)
    length = len(num)
    k = 0   
    for i in range(length-1):            
        for j in range(i+1, length):
            if num[i] == num[j]:
                k = 1
    if k == 1:
        return True
    else:
        return False

def isprime(x): 
    for i in (2, int(sqrt(x))+1):
        if x % i == 0:
            return False
    return True                     

if __name__ == "__main__":
    count = 0
    n1, n2 = eval(input("input two numbers a, b(a<32767,b<32767): ")) 
    if n1 > n2:
        n1, n2 = n2, n1
    for i in range(n1, n2+1):
        if validate(i) or isprime(i):
            count += 1
            print("{:<8}".format(i), end = "")
            if count % 8 != 0:     
                print()

每有一个重复的 k+1
参考答案
(1)k = 1 修改为k=k+1
(2)(2, int(sqrt(x))+1)修改为range(2, int(sqrt(x))+1)
(3)if validate(i) or isprime(i)修改为if validate(i) and isprime(i)
(4) if count % 8 != 0修改为if count % 8 == 0

在这里插入图片描述
在这里插入图片描述
参考答案

str=input(" input a string:")
strCopy = str.split()
newStr=list(reversed(strCopy))
print(' '.join(newStr))

在这里插入图片描述
在这里插入图片描述

#参考答案
def Narc(x): 
  num1=x//100
  num2=x%100//10
  num3=x%10
  if x==num1**3+num2**3+num3**3:
     return True
  return False

if __name__ == "__main__":
   num = ""
   for i in range(101,1000):
      if Narc(i) :
           print(i)
           num = num + str(i) + "\n"
   print("my exam is 00112233")
   fp=open("myf4.out","w")
   fp.write (num)
   fp.close()

江苏二级Python第四套

基础知识

在这里插入图片描述

Intel英特尔历代经典 CPU 产品回顾
2.
在这里插入图片描述
3.
在这里插入图片描述
4.
在这里插入图片描述
5.
在这里插入图片描述
GB18030 与Unicode两者的汉字编码有很大区别
6.
在这里插入图片描述
机器语言就是二进制指令编码,所以不需要语言处理系统。
7.
在这里插入图片描述
CD-ROM才为只读盘片
8.
在这里插入图片描述
第二代手机属于功能类手机,不属于智能机。
9.
在这里插入图片描述
CMOS属于易失性存储器,需要由主板上的电池供电.
10.
在这里插入图片描述
算法可以欸有输入 但必须有输出。

程序设计

在这里插入图片描述
C

2.

在这里插入图片描述
答案是:A解析:执行a+b时,因为a与b的数组列数不同,所以会自动扩充a数组与b数组的列数一样,即a数组扩充为([1,2,3],[1,2,3]),执行a+b后,a与b对应的相加,结果是(I[2,4,6],[5,7,9]])。
3.
在这里插入图片描述
4.
在这里插入图片描述
5.
在这里插入图片描述

6.

在这里插入图片描述
set(lst)表示将lst转换为去掉重复元素的集合。
Python 集合set详解(超详细)
集合(set)是一个无序的不重复元素序列。
7.
在这里插入图片描述
在这里插入图片描述
8.
在这里插入图片描述
9.
在这里插入图片描述
10.
在这里插入图片描述
11.
在这里插入图片描述

12.

在这里插入图片描述
1)[1,2,3,[4,5,6]]
2) [3,4,5,6]

操作题

在这里插入图片描述

n = int(input("please enter the number: "))
for i in range(2, n):
    if __________:  
        print("{} is not a prime number!".format(n))
        break
__________
    print("{} is a prime number!".format(n))

参考答案
(1)n%i==0
(2)else:

2.

在这里插入图片描述

import random

def proc(data):
    cls_no = random.choice(list(data.keys()))
    stu_no = random.randint(1,__________)
    return "{}{:02}".format(cls_no, stu_no)

if __name__ == "__main__":
    data = {"A001":32, "A002":47, "B001":39, "B002":42}
    result = set()
    while len(result) < 5:
        result.add(__________) 
    print(result)

(1)data[cls_no] 取出键里的值
参考答案
(1)data[cls_no]
(2)proc(data)

在这里插入图片描述
【含有错误的源代码】

def proc(x):
    a = x % 1000   
    b = x / 1000 
    if a % 111 == 0 and b[::-1] == b:
        return True
    return False 

if __name__ == "__main__":
    while True:
        try:
            m, n = eval(input("input m&n(m, n): "))
            if m > n:
                m, n = n, m
            if 100 <= m <= 10000 and 100 <= n <= 10000:
                continue  
        except:
            print("input error")       
    klist = []
    for k in range(m, n):
        x = k**2+k+17
        if proc(x):
            klist.add([k, x])   
    print(klist)

参考答案
(1)b = x / 1000修改为b = str(x // 1000)
(2)continue修改为break
(3) range(m, n)修改为 range(m, n+1)
(4) klist.add([k, x])修改为klist.append([k, x])

在这里插入图片描述

#参考答案
for i in range(1000,10000):
   n=i*9
   k=str(i)
   if k[::-1]==str(n):
      print(str(i)+"*9="+str(n))
      fp=open("myf3.out","w")
      fp.write(str(i)+"*9="+str(n))
      fp.close()

在这里插入图片描述
在这里插入图片描述

参考答案
def BP(nums):
  i=2
  while i<len(nums):
    if sum(nums[:i-1])==sum(nums[i:]):
      print("the balance point is:" + str(nums[i-1]))
      break
    
    i=i+1
  if i==len(nums):
      print("no balance point") 

if __name__ == "__main__":
  nums=eval(input("input the numbers: "))
  BP(nums)
  print("My test ID is 5700001.")

江苏二级Python第五套

基础知识

在这里插入图片描述
答案是:C解析: FLASH存储器有两种,或非型(NOR Flash)和与非型(NAND Flash),
或非型以字节为单位进行随机存取,存储在其中的程序可以直接被CPU执行,可用作内存储器(如存储BIOS程序的Flash存储器),
NAND Flash以页为单位存储,读出速度较慢,通常应将其程序或数据先成批读入到RAM中再进行处理,但容量较大,大多用作存储卡,U盘或固态硬盘等辅助存储器使用,如手机中的手机存储或机内内存之类的辅助存储器,
SRAM主要用于高速缓存(cache),
DRAM主要用于内存条,
EEPROM主要用于低端嵌入式计算机使用。
2.
在这里插入图片描述
3.
在这里插入图片描述
答案是:D解析:乐谱在计算机中既不用简谱也不用五线谱表示,而是使用一种叫做MIDI的音乐描述语言来表示,MIDI是计算机和数字乐器使用的音乐描述语言,它不仅规定了乐谱的二进制数字表示方法,额规定了演奏控制器,音源,计算机等相互连接的通信规程,MIDI规定,乐谱中的音符及其定时、速度、音色等采用MIDI消息进行描述,每个MIDI消息描述一个音乐事件,一首乐曲所对应的全部MIDI消息组成一个MIDI文件。
4.
在这里插入图片描述
5.
在这里插入图片描述
6.
在这里插入图片描述
答案是:B解析:目前SD卡的容量分为3档,分别为SD(8MB-2GB),SDHC(大于2GB-32GB),SDXC(大于32GB-2TB).

在这里插入图片描述
答案是:D解析:真空电子管出现后,随着发展出现了晶体管,之后集成电路出现,第1代计算机以真空电子管为基础元件,后期集成电路出现(20世纪50年代),它以半导体单晶片作为材料
8.
在这里插入图片描述
答案是:C解析:
GIF格式属于无损压缩,广泛适用于因特网上,可以做动态图像使用;
JPEG格式属于有损压缩,适用于因特网、数码相机,用作静态图像,
RAW文件格式在数码相机中使用较多,其含义是未经加工的图像,包含了感光器件捕获到的未经处理的像素数据,还包含了拍摄照片时的很多参数;
BMP是微软windows系统上的图像格式,
TIF是扫描仪或桌面出版文件格式,
PNG是W3C开发的一种图像文件格式,它既保留了GIF文件的特性,又增加了许多GIF文件格式没有的功能,PNG主要在互联网上使用。

在这里插入图片描述
10.
在这里插入图片描述
答案是:A解析:不同型号计算机所对应的机器语言是不同的。
32位电脑和64位电脑

程序设计

在这里插入图片描述
2.
在这里插入图片描述

3.

在这里插入图片描述
4.在这里插入图片描述
5.
在这里插入图片描述
shape可以获取数组维度
size可以获取元素个数

在这里插入图片描述

7.

在这里插入图片描述
pets
8.
在这里插入图片描述

9.

在这里插入图片描述
在这里插入图片描述

10.

在这里插入图片描述
-1 + 2 -3 +4-… 最后等于50

在这里插入图片描述
12.
在这里插入图片描述
字符串find()方法用于检测字符串中是否包含参数字符串。若包含,则返回字符串中第一次出现参数字符串的位置,否则返回-1。也可以指定起始末尾偏移量来指定字符串的范围。

操作题

在这里插入图片描述
【待完善的源代码】

with __________ as f:        
    result = []
    for line in f.readlines():
        line = line.strip()
        if len(line) != 0 and line[0] != '#':
            __________
    result.sort()
for line in result:
    print(line)

参考答案
(1)open(“poem.txt”,“r”)
(2)result.append(line)

读取用 r
2.
在这里插入图片描述
【待完善的程序】

a = []
for i in range(8):
    a.append([])
    for j in range(8):
        a[i].append(0)
for i in range(8):
    a[i][0] = 1
    __________ 
for i in range(2, 8):
    for j in range(1, i):
        a[i][j] = __________   
for i in range(8):
    for j in range(i+1):
         print("{:3d}".format(a[i][j]), end = " ")
    print()

参考答案
(1)a[i][i]=1
(2)a[i-1][j-1]+a[i-1][j]
3.
在这里插入图片描述
【包含错误的代码】

def proc(strings):                     
    m = 0
    lst = []
    for i in range(len(strings)):
        if len(strings[i]) < m:       
            m = len(strings[i])
    for i in range(len(strings)):
        if len(strings[i]) = m:       
            lst.append(strings[i])
    return strings       

if __name__ == "__main__":
    strings = ['cad' ,'VB', 'Python', 'MATLAB', 'hello', 'world']
    result = proc(strings)
    print("the longest words are:")
    if item in result:         
        print(item)

参考答案
(1)len(strings[i]) < m 修改为len(strings[i]) > m (2)len(strings[i]) = m修改为 len(strings[i]) == m
(3) return strings修改为return lst
(4)if item in result 修改为 for item in result

在这里插入图片描述

#参考答案
m,n=eval(input("input m value(m,n):"))
sum=0
for k in range(m,n+1):
   if k%3==1 and k%5==3:
      sum=sum+k
print(sum)

在这里插入图片描述
在这里插入图片描述

#参考答案

def add_info(tele):
   userName=input("input the user name:")

   while True:
     for user in tele.keys():
       if user==userName:
          print("exist already")
          break        
     else:
       phone=input("input the phone number:")
       tele[userName]=phone
       print("create successfully")

     userName=input("input the user name:")
     if userName=="0":
        break;

if __name__ == "__main__":
  tele={}  
  
  while True:
    num=input("1: input, 2: print, 3: quit\n")
    if num=="1":
       add_info(tele)
    elif num=="2":
     print(tele)   
    elif num=="3":
     print("bye bye")
     print("my test ID is 00112 ")
     break    

江苏二级Python第六套

基础知识

在这里插入图片描述
2.
在这里插入图片描述
3.
在这里插入图片描述
即时通信从单一的C/S工作模式逐渐变化为C/S 与P2P混合模式
4.
在这里插入图片描述

5.

在这里插入图片描述
答案是:B解析:**共享以太网以集线器(hub)为中心构成,**共享式局域网任何时间只允许一对节点进行通信,共享带宽,因而在节点数目较多且通信频繁时,网络会发生拥塞,性能急剧下降;交换式以太网采用的设备是以太网交换机,连接交换机的每个计算机各自独享一定的带宽。
6.
在这里插入图片描述
7.
在这里插入图片描述
8.
在这里插入图片描述

9.

在这里插入图片描述
无速度调制
10.
在这里插入图片描述
答案是:B解析:
ASF是微软公司开发的一种数据格式,音频、视频、图像以及控制命令脚本等多媒体信息通过这种格式,以网络数据包的形式传输,实现流式多媒体内容发布;
Divx是Divx公司开发的一种数字视频格式,支持MPEG-4,H.264和最新H.265标准的视频,分辨率可高达4K超高清;
FLV流媒体格式是随着Flash MX的推出发展而来的视频格式。由于它形成的文件极小、加载速度极快,使得网络观看视频文件成为可能,它的出现有效地解决了视频文件导入Flash后,使导出的SWF文件体积庞大,不能在网络上很好的使用等问题,是Adobe公司开发的;
WebM由Google提出,是一个开放、免费的媒体文件格式。

程序设计

在这里插入图片描述
2.
在这里插入图片描述
3.
在这里插入图片描述
4.
在这里插入图片描述
5.
在这里插入图片描述
6.
在这里插入图片描述
7.
在这里插入图片描述

8.

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

1)30
2) array([1,3,5,7])

9.

在这里插入图片描述
1 0 0 0 0 0 1 1

10.

在这里插入图片描述

操作题

在这里插入图片描述

def countchar( ___(1)___ ):
  list1 = [0]*26
  for i in range (0,len(str)):
    if (str[i] >= 'a' and str[i] <='z'):
       list1[ord(str[i])- ___(2)___] += 1
  print(list1)
  
if __name__ == "__main__":
  str = "Hope is a good thing."
  str = str.lower()
  countchar(str)

1)str
2)97

ord()函数是Python中的一个库函数,用于从给定字符值中获取数字值,它接受一个字符并返回一个整数,即用于将字符转换为整数,即用于获取ASCII给定字符的值 。
97 是a 的ascii码
2.
在这里插入图片描述

import ______(1)______
x,s=1,0
sign=1
k=1
while math.fabs(x) > 1e-6:
   s += x
   k =  ______(2)______
   sign *= -1
   x=sign/k
s *= 4
print("pi = {:.15f}".format(s))
import ______(1)______
x,s=1,0
sign=1
k=1
while math.fabs(x) > 1e-6:
   s += x
   k =  ______(2)______
   sign *= -1
   x=sign/k
s *= 4
print("pi = {:.15f}".format(s))

参考答案
(1) math
(2) k+2

3.

在这里插入图片描述
在这里插入图片描述
【含有错误的源代码】

def insert(data, num):
  length = length(data)
  data.append(num)
  for i in range(length) + 1:
    if num < data[i]:
      for j in range(length,i,-1):
        data[j] = data[j+1]
      data[i] = num
      break
    
if __name__ == "__main__":
  data = [13,22,31,48,54,71,91,94]
  while True:
    try:
      num = int(input("Enter a new number:"))
      insert(data, num)
      print("The new sorted list is:",data)
      continue
    except ValueError:
       print("Please enter a digit!")

参考答案
(1)length = length(data) 修改为 length = len(data)
(2) range(length) + 1 修改为 range(length)
(3)data[j] = data[j+1]修改为data[j] = data[j-1]
(4)continue修改为break

在这里插入图片描述

#参考答案
i,j,k = 0,0,0
count = 0
for i in range(21):
  for j in range(51):
    k=100-5*i-2*j
    if k>=0:
      count= count+1
print("count={:d}".format(count))

在这里插入图片描述

参考答案
import math
def isprime(x):
  if x==1:
    return False
  k = int(math.sqrt(x))
  for j in list(range(2,k+1)):
    if x % j == 0:
      return False
  return True

def ismonisen(x):
  if isprime(x) and isprime(2**x-1):
    return True
  else:
    return False
if __name__ == "__main__":
  num_list = [2, 7, 11, 13, 21]
  result_list = []
  for num in num_list:
    if ismonisen(num):
       temp = 2 ** num - 1
       print(temp, end = ' ')
       result_list.append(str(temp)+' ')
  with open("myf2.out", "w") as fp:
    fp.writelines(result_list)
    fp.write("\nMy exam number is: 0112400123")

江苏二级Python第七套

基础知识

在这里插入图片描述
2.
在这里插入图片描述
电视分为模拟电视与数字电视,数字电视可以直接接收数字信号
3.
在这里插入图片描述
4.
在这里插入图片描述
无损压缩如:BMP,PNG,GIF,TIF文件格式的图像。
5.
在这里插入图片描述

6.

在这里插入图片描述
答案是:B解析:CPU主要由三个部分组成:寄存器组(用来临时存放参加运算的数据和运算得到的中间结果)、
运算器(简称ALU,对数据进行加、减、乘、除等算术运算)、
控制器(指挥与控制中心,用来存放CPU正在执行的指令的地址,控制器中还有一个指令寄存器,它用来保存当前正在执行的指令,通过译码器解释该指令的含义,控制运算器的操作)。
7.
在这里插入图片描述
8.

在这里插入图片描述
目前键盘上的按键大多是电容式的
9.
在这里插入图片描述
10.
在这里插入图片描述

程序设计

在这里插入图片描述
2.
在这里插入图片描述
axis=0 每一列
axis=1 每一行
3.
在这里插入图片描述
4.
在这里插入图片描述
答案是:A解析:python的关键字共33个,and、as、assert、break、class、continue,def、del、elif、else、except、finally、for、from、False、global、if、import、in.is、lambda、nonlocal.not、None、or、pass,raise、return.try.True.while.with.yield
5.
在这里插入图片描述
6.
在这里插入图片描述
7.
在这里插入图片描述
注意是str,要加引号
8.
在这里插入图片描述
9.
在这里插入图片描述

10.

在这里插入图片描述
注意这里是 不加引号的2343
11.
在这里插入图片描述
12.
在这里插入图片描述

操作题

在这里插入图片描述
【待完善的源程序】

words = ["HELLO", "beautiful", "Hi", "read", "Our"]
lst = []
count = 0
for word in words:
    if "e"  __________ word.lower(): 
        lst.append(word.lower())
        __________ 
    count += 1
else:
    print("Not Found!")
print("There are {} words before the needed word.".format(count))
print("The needed word is: {}".format(lst[0]))

参考答案
(1)not in
(2)break
2.
在这里插入图片描述
【待完善的源程序】

s = input("input string:")
lst=[]
ts = s[0]
for i in range(__________):  
    if s[i-1]<s[i]:
        ts += s[i]
    if s[i-1]>=s[i] or s[i-1]<s[i] and i==len(s)-1:
        if len(ts)>=2:
            lst.append(ts)
        ts = __________ 
print(",".join(lst))

参考答案
(1)len(s)
(2)s[i]

3.

在这里插入图片描述

def isUglyNumber(x):
    if x == 1:
        return True
    else:
        for i in [2,3,5]:
             if x%i == 0:  
                x //= i
        return x==1
 
def getUglyNumber(N,lst):
    count = 0
    x = 1
    while x<N:    
        if isUglyNumber(x):
            lst.append(x)
            count += 1
        x += 1
        
if __name__ == "__main__":
    N = int(input("Please enter the N(N>0): "))
    lst = []
    lst = getUglyNumber(N,lst)  
    print(lst)
    file open("out.txt","w") as fp:   
        fp.write(str(lst))

参考答案
(1)if x%i == 0修改为while x%i == 0
(2)x<N修改为count<N
(3)lst = getUglyNumber(N,lst)修改为getUglyNumber(N,lst)
(4)file open(“out.txt”,“w”) as fp 修改为with open(“out.txt”,“w”) as fp

在这里插入图片描述

参考答案
s=['level','dog','keep','apple','pool','loop','god']
for i in range(len(s)):
    for j in range(i+1,len(s)):
       if ''.join(reversed(s[i]))==s[j]:
          print(s[i],s[j],sep="--")
s=['level','dog','keep','apple','pool','loop','god']
for i in range(len(s)):
    for j in range(i+1,len(s)):
       if s[i][::-1]==s[j]:
          print(s[i],'--',s[j])       

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

参考答案
def transID(idNumber,y,verify):
    leftId=idNumber[0:6]
    rightId=idNumber[8:]
    midId="19"+idNumber[6:8]
    sum=0
    
    idNumber=leftId+midId+rightId

    for n in range(0,17):
        sum=sum+int(idNumber[n])*y[n]
    
    k=sum%11
    idNumber=idNumber+verify[k]

    return idNumber


if __name__=="__main__":
    idNumber=1
    y=[7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2]
    verify=['1', '0', 'X', '9', '8', '7', '6', '5', '4', '3', '2']
    while idNumber!='0':      
      idNumber=input("请输入15位身份证号:")
      if idNumber!='0':
        numId=transID(idNumber,y,verify)
        print(idNumber,'---',numId)

    print('My test ID is 5700001')

江苏二级Python第八套

基础知识

在这里插入图片描述

2.

在这里插入图片描述
目前智能手机用java做开发
3.
在这里插入图片描述
答案是:D解析:
BIOS包括四个程序:加电自检程序、
系统主引导程序、
CMOS设置程序、
基本外围设备的驱动程序
4.
在这里插入图片描述
答案是:D解析:免费软件是-种无需付费就可取得的软件,用户没有修改和分发该软件的权利,注意免费软件与自由软件的区别。自由软件的原则是:用户可共享自由软件,允许自由拷贝、修改其源代码,允许销售和自由传播,但是对软件源代码的任何修改都必须向所有用户公开,还必须允许此后的用户享有进一步拷贝和修改的自由,如Apache服务器软件和Linux操作系统。
5.
在这里插入图片描述
A 第二代居民身份证属于非接触式IC卡

6.

在这里插入图片描述
答案是:B解析:
ISA总线属于早期的, lSA在PCI之前出现,PCI总线之后是PCI-E总线

7.

在这里插入图片描述
答案是:C解析:网络互连层规定了在整个互连的网络中所有计算机统一使用的编址方案和数据包格式(称为IP数据报),以及IP数据报的转发机制。

在这里插入图片描述

9.

在这里插入图片描述

答案是:D解析:
GBK字符在计算机内使用双字节表示,第1字节最高位必须为1,第2字节的的最高位必须为1 。

在这里插入图片描述

程序设计

在这里插入图片描述
2.
在这里插入图片描述
3.
在这里插入图片描述

4.

在这里插入图片描述

答案是:D解析:如果输入数组的某个维度和输出数组的对应维度的长度相同或者其长度为1时,这个数组能够用来计算,否则出错,D选项因为通过A.reshape(3,1)将A数组调整为了3行1列,与B数组的对应维度2行3列每个维度都不相同,所以报错。(注:只要有相同的任意一个对应维度就可以计算,比如都是2行,或者都是3列)
在这里插入图片描述
5.
在这里插入图片描述
6.
在这里插入图片描述
7.
在这里插入图片描述

8.

在这里插入图片描述
答案:233

注意;只有else的时候i才会加1
factors(9,2)-> factors(9,3)-> factors(3,3)

9.

在这里插入图片描述
解析:集合是一个不重复元素序列,所以s = {1,2,2,3,3}实际结果是{1,2,3},注意集合的大小判断操作符只会判断集合的包容性,因为t里面是{1,3},而s是[1,2,3},所以s是包容t的,而t是不包容s的,所以t>s返回False,通过s.add将4放入s中形成{1,2,3,4),通过s.remove(2)删除s中的第1个2,所以结果是{1,3,4}。

10.

在这里插入图片描述
25
注意: 它不是列表[2,5] 它是元组(2,5)
11.
在这里插入图片描述
12.
在这里插入图片描述
交换 01 02 12

操作题

在这里插入图片描述
【待完善的代码块】

x = eval(input())
term, n = 1, 2
s = __________
eps = 1e-6
while abs(term)>eps:
    term *= __________          
    s += term  
    n += 1
print("sum = {:.2f}".format(s))

参考答案
(1) 1
(2)x/(n-1)

在这里插入图片描述

def proc(s, punct):
    for ch in punct:
        s = s.replace(ch, " ")
    lst = __________.split() 
    return len(set(lst))

if __name__ == "__main__":
    try:
        with open("poem.txt") as fp:
            s = fp.read()
        result = proc(s, ",;.")
        print("the numbers is: {}".format(result))
    __________: 
        print("cannot open file")  

参考答案
(1)s.lower()
(2)except

在这里插入图片描述
【含有错误的源程序】

from math import sqrt
def prime(n):
    if n == 1:
        return False
    for i in range(int(sqrt(n))+1): 
        if n //i == 0: 
            return False
    return True

if __name__ == "__main__":
    for i in range(100, 201):
        sv = "".join(sorted(i))  
        if prime(i) or prime(int(sv)):
            print(i,end=" ")

参考答案
(1)for i in range(int(sqrt(n))+1)修改为for i in range(2,int(sqrt(n))+1)
(2) if n//i == 0修改为if n%i == 0
(3) sv = “”.join(sorted(i))修改为sv = “”.join(sorted(str(i)))
(4) if prime(i) or prime(int(sv))修改为if prime(i) and prime(int(sv))

在这里插入图片描述

#参考答案:
str=["HELLO", "PH", "Hi", "read", "Our", "tmp123", "vmr"]
exclude=['a','h','j','k','0','1','2','3','4','5','6','7','8','9']
data=[]
for s in str:
    s1=s.lower()
    for j in exclude:
      if j in s1 :
        break
    else:
        data.append(s)

for n in data:
    print(n)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

参考答案:

def process(amount,month,rate_m):
    grossInterest=0
    monthFixedPayments=amount/month
    residue=amount
    month_view=[]
    repaymentMonth=0
    for n in range(1,month+1):        
        grossInterest = grossInterest+(residue)*rate_m        
        repaymentMonth=monthFixedPayments+(residue)*rate_m
        residue=residue-monthFixedPayments
        month_view.append(repaymentMonth)
        
    return grossInterest,month_view,


if __name__=="__main__":
    number=input("请输入合同编号:")
    month=int(number[8:11])
    amount=int(number[11:])
    rate_m=0.0465/12
    rate_sum,month_view=process(amount,month,rate_m)
    print("{:.2f}(元)".format(rate_sum))
    print("前6个月还款额")
    for n in month_view[0:6]:
        print("{:.2f}".format(n))
    print("My Test Id Is 5700001")

  • 14
    点赞
  • 64
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值