![](https://img-blog.csdnimg.cn/20210317212209318.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
python编程
总结了关于备考全国大学生计算机等级考试二级python的编程题以及设计的考点的知识点,总共是19套历年真题。
工程人永远在路上
项目实战源开发、大学生技能提升、融通IT技术领域。
展开
-
read()、readline()、Readlines()之间的区别
read()方法表示读取至文件结束为止,它范围为字符串对象。readline()方法每次读取一行内容,该方法返回一个字符串类型。radlines()方法读取整个文件所有行,保存在一个列表变量中,每行作为一个元素。...原创 2021-03-27 19:11:53 · 267 阅读 · 0 评论 -
技术信息的文本分析
题目描述问题1import jiebaf = open('data.txt','r')datas=f.read()data=jieba.lcut(datas)fi=open("out1.txt","w")d=[]for i in data: if len(i)>=3 and i not in d: fi.write(i+"\n") d.append(i)fi.close()f.close()问题2import jieba.原创 2021-03-24 20:58:53 · 97 阅读 · 0 评论 -
德国工业计划文本分析
题目描述问题1f=open("data.txt","r",encoding="utf-8")#打开这个文件夹,以utf-8编码来实现读取文件内容fi=open("clean.txt","w")data=f.read()f.close()s=""#定义一个字符串用来存储新的内容word=",。!”“、; 《》() “” "#用来存储中文的标点符号for i in data: if i not in word: s+=i#实现字符串的写入fi.write(s).原创 2021-03-24 19:42:26 · 241 阅读 · 1 评论 -
政府工作报告分析
题目描述问题1import jiebadef fenci(txt):#进行分词操纵 f=open(txt,"r")#以读的方式打开 datas=f.read() f.close() data=jieba.lcut(datas)#使用jieba库进行分词 d={}#定义一个字典 for i in data: if len(i)>=2: d[i]=d.get(i,0)+1 lt=list(d..原创 2021-03-24 16:04:44 · 462 阅读 · 1 评论 -
红楼梦人物出场顺序统计
题目描述代码实现import jiebaf = "红楼梦.txt"sf = "停用词.txt"f1=open(f,encoding="utf-8")#声明python代码的文本格式是utf-8编码datas=f1.read()f1.close()f2=open(sf,encoding="utf-8")word=f2.read()f2.close()data=jieba.lcut(datas)d={}#定义一个字典for i in data:#遍历使用jieba库对于分词.原创 2021-03-22 22:34:11 · 1639 阅读 · 0 评论 -
大学排名统计
题目描述data.txt文件内容所示代码实现f = open('data.txt','r')dic={}#定义一个字典for line in f:#按照逐行遍历 lis=line.strip().split(",")#去除掉换行符(空格包括换行符、空格),然后再以逗号为分隔标志形成一个列表 if len(lis)<3:#由于每行遍历的时候,根据给出的文档可以看出,还有的行有空格,所以对于有空行的行要去除 continue dic[lis.原创 2021-03-20 13:31:57 · 273 阅读 · 0 评论 -
统计中文的个数
题目描述代码实现s = input("请输入中文和字母的组合: ")count=0for c in s: if "\u4e00"<=c<="\u9fff": count += 1print(count)知识点:在python中,中文字符的编码范围都处于"\u4e00"到"u9fff"之间。...原创 2021-03-20 11:11:59 · 433 阅读 · 0 评论 -
python中对于CSV文件的处理
对于打开一个CSV文件的内容如下:使用记事本打开的格式如下:处理方式根据使用记事本打开之后,可以看出对于CSV文件:每行是以换行进行分隔,每列是以逗号进行分隔;那么处理的办法就是-------->以行为单位,对于每行先去除掉换行符,然后再以逗号作为分隔的标志,最后将该行存储在列表中fi=open("CSV文件","r")ls = []for line in fi: ls.append(line.strip("\n").split(","))...原创 2021-03-20 09:38:27 · 315 阅读 · 0 评论 -
文本分析---统计章节题目
题目描述原文内容形式代码实现f = open("八十天环游地球.txt")fi=open("八十天环游地球-章节.txt","w")for i in f: line=i.strip().split()#去除前后的空格,然后以空格进行分隔的标准,最后形成一个列表 if line[0][0]=="第" and "章" in line[0]: fi.write(i)f.close()fi.close()...原创 2021-03-19 22:34:32 · 786 阅读 · 0 评论 -
文本分析-----百分比与时间的统计
题目描述out.txt文档内容代码实现sumtime = 0percls = []ts = {}with open('out.txt', 'r') as f: for i in f: i=i.strip().split(",")#根据给出的文档可以看出,使用strip()去除掉前后的空格,然后再以逗号为分隔符进行分隔形成列表,此时根据文档的信息可以得出新列表应该有三个元素 ts[i[0]]=eval(i[2])#以第一个元素为键,第三个元.原创 2021-03-19 21:48:40 · 202 阅读 · 0 评论 -
密码的生成
题目描述代码实现import randoms = input("请输入随机种子: ")ls = []for i in range(26):#产生26个字母 ls.append(chr(ord('a')+i))for i in range(10):#产生0~9数字 ls.append(chr(ord('0')+i))random.seed(eval(s))#产生随机数种子for i in range(10):#控制输出个数 for j in range(8).原创 2021-03-19 21:24:10 · 193 阅读 · 0 评论 -
大学文本分析
题目描述问题1fi=open("data.txt","r")#打开该文档,以读的方式进行读取f = open("univ.txt", "w")#创建一个文档L=[]#用来存储大学或者企业的名称lines=fi.readlines()#用readlines()函数读入所有行,以每行为元素形成列表linesfor line in lines: if "alt=" in line:#找到了大学的名称 begin=line.find("alt=")#用于判断字符串a.原创 2021-03-18 17:56:18 · 153 阅读 · 0 评论 -
排除数字的输入
题目描述代码实现while True: s = input("请输入不带数字的文本:") for i in range(10): if str(i) in s:#使用str()将数字i转换为字符串,该语句为判断字符串i是否在输入的字符串s中 break else:#执行for之后(没有执行上面的break)后将会执行else,说明输入的字符串没有数字,应该终止程序 breakprint(len(s))...原创 2021-03-17 21:36:35 · 275 阅读 · 0 评论 -
正方形外接圆
题目描述代码实现import turtleturtle.pensize(2)#画笔的大小for i in range(4): turtle.fd(200) turtle.left(90)turtle.left(-45)#turtle.left(45)为小龟头向左旋转45度,turtle.left(-45)为小鬼头向右旋转45度turtle.circle(100*pow(2,0.5))#绘制圆的半径...原创 2021-03-17 21:15:13 · 2923 阅读 · 0 评论 -
等比数列
题目描述代码实现a, b, c =[eval(x) for x in input().split(",")]#用户输入的是以逗号分隔的三个数字,则需要使用split()方法将字符串分隔成列表,再使用遍历将该字符串转换为数字ls = []for i in range(c): ls.append(str(a*(b**i)))#由于最后使用了join()方法,要求ls中的元素为字符串类型,所以使用str()来转换为字符串的形式print(",".join(ls))...原创 2021-03-17 20:55:57 · 335 阅读 · 0 评论 -
数字字符与中文字符的替换
题目描述解题思路:实现的方法是:将输入的n中的 每个数字字符替换成s中对应的中文字符,这就需要使用replace()方法。replace(old,new)把字符串中的old替换成new,返回一个新的字符串,返回的是n本身。代码实现n = input()s = "〇一二三四五六七八九"for c in "0123456789": n=n.replace(c,s[eval(c)])print(n)...原创 2021-03-17 20:25:33 · 2218 阅读 · 1 评论 -
应用.format()方法的使用
题目描述代码实现s = input()print("{:\"^30x}".format(eval(s)))#由于要使用双引号填充,这时需要使用转义字符\对双引号进行转义,这点需要记下注意:对于填充的,无法填充时,考虑使用转义字符(\)进行转义再使用。...原创 2021-03-17 20:05:46 · 616 阅读 · 0 评论 -
多圆的绘制
题目描述代码实现import turtle as timport random as rcolor = ['red','orange','blue','green','purple']r.seed(1)for i in range(5): rad = r.randint(20,50)#半径的取值范围 x0 = r.randint(-100,100)#x坐标的取值范围 y0 = r.randint(-100,100)#y坐标的取值范围 t.color(r.原创 2021-03-17 16:05:50 · 152 阅读 · 0 评论 -
统计数字和字母的个数
题目描述代码实现ns = input("请输入一串数据:")dnum,dchr = 0,0for i in ns: if i.isnumeric(): dnum += 1 elif i.isalpha(): dchr +=1 else: passprint('数字个数:{},字母个数:{}'.format(dnum,dchr))知识点:isnumeric()方法判断是否为数字,是返回True,否则返回False.原创 2021-03-17 13:28:01 · 761 阅读 · 0 评论 -
用户信息的输出
题目描述代码实现import randomrandom.seed(2)pdict= {'Alice':['123456789'], 'Bob':['234567891'], 'Lily':['345678912'], 'Jane':['456789123']}name = input('请输入一个人名:')if name in pdict: print(name,pdict[name][0],random.randint(1.转载 2021-03-16 20:54:44 · 151 阅读 · 0 评论 -
直方图绘制
题目描述代码实现import turtle as tls = [69, 292, 33, 131, 61, 254]X_len = 400Y_len = 300x0 = -200y0 = -100t.penup()t.goto(x0, y0)t.pendown()t.fd(X_len)t.fd(-X_len)t.seth(90)t.fd(Y_len)t.pencolor('red')t.pensize(5)for i in range(len(ls)):.原创 2021-03-16 20:01:31 · 171 阅读 · 0 评论 -
判断是否为正整数
题目描述代码实现while True: try: a = eval(input('请输入一个正整数: ')) if a > 0 and type(a): print(a) break else: print("请输入正整数") except: print("请输入正整数")知识点:type(x)为判断x类型的一个函数.原创 2021-03-16 19:51:42 · 3163 阅读 · 0 评论 -
统计增值
题目描述代码实现scale = 0.0001 # 成就值增量def calv(base, day): val = base * pow(1+scale,day*11)#工作一个小时的成就值为1+1*0.01%=100.01%,工作一天(以8小时计算)为100.01%**8,工作day天为100.01%**8*day return valprint('5年后的成就值是{}'.format(int(calv(1, 5*365)))) year = 1wh.原创 2021-03-16 19:46:20 · 313 阅读 · 0 评论 -
分数排序---键值对与列表的应用
题目描述代码实现score={"lili":80,"xiaoqiang":75,"yunyun":89,"yuanyuan":90,"wanghao":85}ls=list(score.items())#将字典类型转换为列表类型ls.sort(key=lambda x:x[1],reverse=True)#降序排序for i in range(3): print("{}{}".format(ls[i][0],ls[i][1]))注意:要进行排序时,首先考虑的是将其转换为列.原创 2021-03-15 12:45:51 · 223 阅读 · 0 评论 -
找相同项-----字典的应用
题目描述文件内容代码实现def proc(stu_list): d = {} for item in stu_list: r=item.split("_")#根据题目给出的格式可以知道,需要使用split()方法将其记行分隔 a,b=r[0],r[1].strip()#以班级(a)为键,学号(b)为值 if a in d:#如果键在字典只给你,则把值存入列表 d[a]+=[b] els.原创 2021-03-15 12:35:05 · 119 阅读 · 0 评论 -
统计集合中的元素全部为小写字母
题目描述统计一个英文单词的集合中包含全部是小写字母的单词的单词总数代码实现strings = {'cad', 'PE ', 'Window', 'FM', 'hello', 'world','flowers'}n=0for word in strings: if word.islower(): n += 1print(n) 知识点:使用islower()方法:可以用来检测字符串全部为小写字母组成。使用isupper()方法:用来检测字符串全部为大写字母组.原创 2021-03-15 11:34:32 · 1166 阅读 · 0 评论 -
统计长度
题目描述代码实现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[.原创 2021-03-15 11:20:13 · 191 阅读 · 0 评论 -
打印杨辉三角
题目描述解题思路分析杨辉三角的数据和题目所给出的代码可以知道,把每行的内容存储到数组中,且每个数组下标为0和下标为行号的元素不变均为1,且每行的元素为上一行元素成倒三角形的组合数据之和,数据完成之后,打印数组中的内容代码实现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 a[i][i]=.原创 2021-03-15 11:08:15 · 145 阅读 · 0 评论 -
文本分析
题目描述poem.txt原文内容**解题思路:**题目要求以行为单位排序,即需要把文本中的内容存储在列表中,使用readlines()方法,一次性读入文本内容并把每行内容作为列表的元素存储,读入每行内容时使用strip()方法去除空格,用if语句判断不是空行和注释后,需要把该行增加到之前定义的列表result中,读入完毕之后,使用sort()方法对列表排序;对排列之后的雷彪for循环输出,最后调用close()方法关闭文件,防止文件丢失。代码实现f=open("poem.txt",".原创 2021-03-15 10:53:43 · 218 阅读 · 0 评论 -
猜游戏
题目描述代码实现import randomletter_list = ['a', 'b', 'c', 'd', 'e', 'f','g', 'h', 'i', 'j', 'k', 'l','m', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z']letter = letter_list[random.randint(0, 25)]count = 0while True: letter_inpu.原创 2021-03-13 18:41:14 · 92 阅读 · 0 评论 -
正六边形叠加的绘制
题目描述代码实现from turtle import *pensize(5)for i in range(6): fd(100) right(60)color("red")circle(60,steps=6)知识点:circle()函数一般有两个参数,第一个参数为半径,第二个参数有两种形式:参数extend(角度)是指绘制弧形的角度;参数steps(n>=3)表示绘制圆内接n边型,这两种形式不能同时使用。...原创 2021-03-11 11:31:27 · 591 阅读 · 0 评论 -
菱形图案的输出
题目描述分析:观察题目给的图形,可以看出菱形是一个规则图形,可以分成两部分编写代码,每一部分都是有空格和星号组成,所以每部分需要两个for循环,外部循环两控制星号的输出,内部循环两控制空格的输出代码实现for i in range(0,4):#控制星号的输出 for y in range(0,4-i):#控制空格的输出 print(" ",end="") print("* "*i)for i in range(0,4):#控制星号的输出 for x .原创 2021-03-11 11:19:32 · 502 阅读 · 0 评论 -
处理时间
strftime()方法的格式化操作格式化字符串---------------日期/时间------------值范围和实例%Y--------------------------年份---------------------0001~9999%m-------------------------月份---------------------01~12%B-------------------------月名----------------------January~December%b--.原创 2021-03-11 10:05:56 · 80 阅读 · 0 评论 -
文本转诗歌
题目描述问题1fi = open("关山月.txt","r")fo=open("关山月-诗歌.txt","w")txt=fi.read()ls=txt.split("。")fo.write("。\n".join(ls))fi.close()fo.close()说明:题目给出的文件是一段文本,要把文本改为诗歌风格,即以句号分隔,可以使用字符串的split()方法,该方法返回的是一个列表,列表中的每一个元素都是一行诗句,使用join()方法把列表的每一个 元素写入带“关山月.原创 2021-03-10 12:00:39 · 1954 阅读 · 0 评论 -
九九乘法表输出
题目描述代码实现fo = open("PY202.txt","w")for i in range(1,10): for j in range(1,i+1): fo.write("{}*{}={}".format(j,i,i*j)) fo.write("\n")fo.close()原创 2021-03-10 11:41:21 · 89 阅读 · 0 评论 -
心的绘制
题目描述代码实现from turtle import *def curvemove(): for i in range(200): right(1) forward(1)setup(600,600,400,400)hideturtle()pencolor('black')fillcolor("red")pensize(2)begin_fill()left(140)forward(111.65)curvemove()left(120).原创 2021-03-10 11:31:31 · 58 阅读 · 0 评论 -
输入年份输出日历
题目描述从键盘输入年份,输出,当年的日历输入请输入年份:2021输出代码实现import calendaryear = eval(input("请输入年份:"))table = calendar.calendar(year)print(table)知识点:calendar模块是Python的标准库,该模块下的calendar()方法用于获取指定年份的日历。...原创 2021-03-10 11:22:35 · 2627 阅读 · 0 评论 -
凯撒密码
题目描述代码实现intxt = input("请输入明文:")for p in intxt: if 'a'<=p<='z': print(chr(ord('a')+(ord(p)-ord('a')+3)%26),end='') elif 'A'<=p<='Z': print(chr(ord('A')+(ord(p)-ord('A')+3)%26),end='') else: print(p,end.原创 2021-03-10 10:22:18 · 186 阅读 · 0 评论 -
对数的实现编写
题目描述使用python的异常处理结构编写对数计算,要求底数大于0且不等于1,真数大于0,且输入的必须为实数,否则抛出对应的异常import mathtry: a = eval(input('请输入底数:')) b = eval(input('请输入真数:')) c = math.log(b,a)except ValueError: if a<=0 and b>0: print("底数不能小于等于0") elif b<=.原创 2021-03-01 15:14:51 · 895 阅读 · 1 评论 -
四瓣花图形绘制
代码实现import turtlefor i in range(4): turtle.seth(90*(i+1)) turtle.circle(50,90) turtle.seth(-90+i*90) turtle.circle(50,90)turtle.hideturtle()#隐藏画笔箭头原创 2021-03-01 14:42:25 · 4813 阅读 · 0 评论