|
计算机等级考试2级(Python)知识点整理1.基础知识点(记忆、理解)第1讲Python概述01.源代码02.目标代码03.编译和解释04.程序的基本编写方法第2讲Python语言基础(一)01.用缩进表示代码块:一般用4个空格或1个TAB02.代码注释的方法:单行注释用“#”表示注释开始;多行注释是用三个英文的单引号“‘’'”或双引号““”"”作为注释的开始和结束符号。03.标识符命名规则标识符是变量、函数、类、模块和其他对象的名字。标识符第一个字符必须是英文字母或下划线_;标识符的其他的部分由字母、数字和下划线组成;Python语言标识符对大小写敏感,长度没有限制。例如:x3、x_3、my_factor是正确的,而3x、if(保留字)、__init__(预定义标识符)则是错误的。104.Python3.x关键字(保留字)列表(35个)ifelifelseforwhilebreakcontinueinandornotdefglobalreturnlambdanonlocalimportfromastryfinallyexceptraisedelisTrueFalseassertpassyieldNoneclasswithasyncawait05.基本输出实例输出一个对象并赋值;输出多个对象;指定输出不换行>>>a,b=2,3>>>print(“a=”,a)a=2>>>print(“a=”,a,“b=”,b)a=2b=3第3讲Python语言基础(二)01.内置数值操作+-*///%**02.内置数值函数divmod(x,y)、pow(x,y)或pow(x,y,z)、round(x)或round(x,d)、max(x1,x2,…,xn)或min(x1,x2,…,xn)按照以下格式写:a,b=divmod(10,3)#输出二元形式的商和余数,结果为a=3,b=103.math模块及其引用importmathmath库中主要常数及数学函数函数功能示例e表示一个常量>>>math.e#2.718281828459045pi数字常量,圆周率>>>math.pi#3.141592653589793sqrt(x)求x的平方根pow(x,y)*返回x的y次方,即x*y>>>math.pow(3,4)#81.0fabs(x)返回x的绝对值04.算数运算符、关系运算符05.例用户输入一个三位自然数,计算并输出其百位、十位和个位上的数字。(两种方法)第4讲Python语言基础(三)(重点:字符串应用程序编写)01.整型(int)0x9a、-0X89(0x**、0X开头表示16进制数**)0b010、-0B101(0b**、0B开头表示2进制数**)0o123、-0O456(0o**、0O开头表示8进制数**)02.字符串有2类共4种表示方法-由一对单引号或双引号表示,仅表示单行字符串"请输入带有符号的温度值:"或者'C’-由一对三单引号或三双引号表示,可表示多行字符串03.Python转义字符表\t水平制表符\*一个斜线*’单引号’"双引号”04.字符串索引-字符串是一个字符序列:字符串最左端位置标记为0,依次增加。字符串中的编号叫做“索引”HelloJohn正向→0123456789反向←-10-9-8-7-6-5-4-3-2-1>>>s="Python语言"#len(s)结果为8>>>print(s[2])t>>>s="Python语言">>>s[-1::-1]'言语nohtyP'123456789101105.练习:获取星期字符串06.字符串的格式化例题:使用format方法进行格式化date="2018-9-18"rate=10.2222print("{}:计算机{}的CPU占用率为{:.2f}%。".format(date,"Python",rate))运行结果:2018-9-18:计算机Python的CPU占用率为10.22%。例题:c=3d=4print("c=",c)print("c={},d={}".format(c,d))运行结果:c=3c=3,d=41234567891011121314151617181920212223242507.类型转换函数描述示例int(x[,base])将x转换为整数,x可以是浮点数或字符串,base可以是2、8、16,此时x必须是字符串int(2.8)#2int(-2.8)#-2int(‘2.8’)#错误int(‘ff’,16)#255int(‘1011’,2)#11float(x)将x转换为浮点数,x可以是整数或字符串float(‘10’)#10.0float(10)#10.0str(x)将x转换为字符串,x可以是整数或浮点数str(3.14)#‘3.14’第5讲程序控制结构(一)01.程序由三种基本结构组成顺序结构、分支结构、循环结构02.Python语言共有6个关系操作符03.Python语言共有3个逻辑操作符04.单分支结构:if语句•if条件:•语句块05.二分支结构:if-else语句if条件:语句块1else:语句块206.多分支结构:if-elif-else语句if条件1:语句块1elif条件2:语句块2…else:语句块N07.例子PM=eval(input("请输入PM2.5数值:"))if0=0andPM=35andPMin:循环N次foriinrange(N):遍历文件fi的每一行forlineinfi:遍历字符串sforcins:遍历列表lsforiteminls:【例1】用户输入一个正整数N,计算从1到N(包含1和N)相加之后的结果。【例2】输入一个正整数n,求1-1/3+1/5-…的前n项和。sum=0;flag=1;denominator=1;item=1n=int(input("请输入整数N:"))foriinrange(1,n+1):sum=sum+item;#累加第i项的值flag=-flag;#准备下一次循环denominator=denominator+2;item=flag/denominator;#计算第i项的值print("运算结果是:{:.2f}".format(sum))123456789101112131415'运行运行02.无限循环:while语句while:else:#else****语句块作为"正常"完成循环的奖励例题3importmathsum=0;flag=1;denominator=1;item=1whilemath.fabs(item)>=1e-6:sum=sum+item;#累加第i项的值flag=-flag;#准备下一次循环denominator=denominator+2;item=flag/denominator;#计算第i项的值sum=4*sumprint("π的近似值为:{}".format(sum))1234567891011121314151617'运行运行03.循环保留字:break和continue第7讲程序控制结构(三)补充:begin,end=map(int,input(“”).split())#以空格隔开输入两个数如:38#结果begin=3,end=8**【例2修改】**编程(leapyear.py)将1900-2020(包括1900和2020)之间的闰年打印出来,每行5个。判断闰年的条件是:年份能被4整除但不能被100整除,或者能被400整除。i=0foryinrange(1900,2021):if((y%4==0andy%100!=0)ory%400==0):print(y,end="\t")i=i+1ifi%5==0:print("\n")12345678910111213'运行运行【例5】判断一个自然数是否为素数。n=int(input("Inputaninteger:"))ifn==2:print('Yes')elifn%2==0:#偶数必然不是素数print('No')else:foriinrange(2,n):ifn%i==0:print('No')break#结束循环else:print('Yes')1234567891011121314151617181920212223【例6】利用嵌套循环打印运行效果如图所示的九九乘法表方法一:foriinrange(1,10):s=""forjinrange(1,i+1):s=s+"{:1}*{:1}={:>>ls=["cat","dog","tiger",1024]>>>lt=ls123方括号[]真正创建一个列表,赋值仅传递引用(5)列表功能默写05.集合(1)基本概念-集合类型与数学中的集合概念一致-集合元素之间无序,每个元素唯一,不存在相同元素-集合元素不可更改,不能是可变数据类型-集合用大括号{}表示,元素间用逗号分隔-建立集合类型用{}或set()-建立空集合类型,必须使用set()(2)集合间操作-交(&)、并(|)、差(-)、补(^)、比较(>=:,:,…,:}**02.**字典功能默写03.例子:>>>Dcountry={"中国":"北京","美国":"华盛顿","法国":"巴黎"}>>>forkeyinDcountry:print(key)中国美国法国>>>forkeyinDcountry:print(Dcountry[key])12345678910111213141504.例题第10讲函数和代码复用(一)01.函数的定义与调用**02.**局部变量和全局变量03.lambda函数lambda函数是一种匿名函数,即没有名字的函数第11讲函数和代码复用(二)1.递归的实现2.例13.例24.例35.例4第12讲文件1.文件的打开和关闭文件处理的步骤:打开-操作-关闭2.打开模式3.例子:4.一维数据的读入处理从空格分隔的文件中读入数据5.一维数据的写入处理采用空格分隔方式将数据写入文件采用空格分隔方式将数据写入文件第13讲Python计算生态(一)(重点:图形绘制填空)01.random库random()生成一个[0.0,1.0)之间的随机小数randint(a,b)生成一个[a,b]之间的整数02.time库03.turtle库-turtle.setup()调整绘图窗体在电脑屏幕中的布局-画布上以中心为原点的空间坐标系:绝对坐标&海龟坐标-画布上以空间x轴为0度的角度坐标系:绝对角度&海龟角度-RGB色彩体系,整数值&小数值,色彩模式切换-penup()、pendown()、pensize()、pencolor()-fd()、circle()、seth()04.实例:Python蟒蛇05.绘制五角星绘制2.典型考试题目真题1:计算斐波那契数列题目:编写一个函数,计算并返回斐波那契数列的第n项。解答:deffibonacci(n):ifn0:result=str(n%2)+resultn//=2returnresultprint(decimal_to_binary(10))#输出101012345678910'运行运行分析:通过不断除以2并取余数,再将余数添加到结果字符串的前面,直到原数为0。题目13:编写程序,查找并打印列表中最大的数。解答:deffind_max(lst):returnmax(lst)numbers=[4,2,9,7,5,1]print(find_max(numbers))#输出912345'运行运行分析:使用Python内置的max函数可以直接找到列表中的最大值。题目14:编写程序,查找最大值并排序。随机生成1到100之间的100个数字的列表,找出值大于50的元素,放入新的列表中,然后按照从小到大排序输出。importrandom#初始化一个空列表random_list=[]#使用循环生成100个随机整数并添加到列表中foriinrange(100):random_list.append(random.randint(1,100))#初始化一个空列表来存放大于50的元素greater_than_50_list=[]#使用循环找出大于50的元素,并添加到新的列表中fornuminrandom_list:ifnum>50:greater_than_50_list.append(num)#对新列表进行排序greater_than_50_list.sort()#输出排序后的列表print(greater_than_50_list)说明:#对新列表进行从大到小的排序greater_than_50_list.sort(reverse=True)1234567891011121314151617181920212223242526题目15:实现一个函数,接收一个字符串,统计并返回字符串中各个字符出现的次数。解答:defcount_chars(s):char_count={}forcharins:ifcharinchar_count:char_count[char]+=1else:char_count[char]=1returnchar_countprint(count_chars("hello"))#输出{'h':1,'e':1,'l':2,'o':1}12345678910'运行运行分析:通过遍历字符串中的每个字符,并使用字典记录每个字符出现的次数,最后返回该字典。
|
|