做二级题合并邮件时插入姓名以后为什么没有其他选项了?也没有邮件合并向导。
1444
2022-05-29
二级备赛系列博文
【计算机二级Python】客观题(总结版)
【计算机二级Python】主观题(总结版)
【计算机二级Python】易忘知识点总结
【计算机二级Python】阶段性总结版
一、数据结构的相关知识点
算法
算法具有可行性、确定性、有穷性的基本特征;
算法是指解题方-而完整的描述;
算法的有穷性是指算法必须能在执行有限个步骤之后终止
算法的复杂度主要包括时间复杂度和空间复杂度;
算法的时间复杂度是指执行算法所需要的计算工作量(执行过程中所需要的基本运算次数)
算法的空间复杂度是指执行这个算法所需要的内存空间
算法的基本要素包括数据对象的运算和操作及算法的控制结构
简单插入排序和选择排序法在最坏的情况下需要比较n(n-1)/2次
快速排序法比冒泡排序法的速度快
冒泡排序法是通过相邻数据元素的交换逐步将线性表变成有序
希尔排序法属于插入类排序法
算法是解题方-而完整的描述
算法分析的目的是:分析算法的效率以求改进
二叉树
在深度为x的满二叉树中,叶子结点的个数为 2 x − 1 2^{x-1} 2x−1个
在深度为7的满二叉树中,结点个数总共是 2 7 − 1 {2^7-1} 27−1
设一颗完全二叉树共有699个结点,则该节点的叶子节点数是350(N+1/2)
二叉树包含度为0的结点、度为1的结点、度为2的结点(度为0的节点总是比度为2的结点多一个,度为1的节点=全部节点-度为1的-度为2的)
二叉树的前序遍历是指先访问根节点 -> 遍历左子树 -> 遍历右子树
二叉树的遍历可以分为三种:前序遍历、中序遍历、后序遍历
后序遍历二叉树的过程是一个递归的过程
二叉树的遍历是指不重复地访问二叉树中的所有结点
二叉树是一种非线性结构
二叉树具有两个特点:非空二叉树只有一个根结点;每一个结点最多有两棵子树,且分别称为该结点的左子树与右子树
数据结构
数据结构指相互有关联的数据元素的集合
在数据结构中,从逻辑上可以把数据结构分成线性结构和非线性结构
数据的逻辑结构反应数据之间的对应关系,与存储结构并不是一一对应的
用树形结构表示实体之间联系的模型是:层次模型
循环队列中元素的个数是由队头指针和队尾指针共同决定
数据的逻辑结构是反映数据元素之间逻辑关系的数据结构
对长度为n的线性表进行顺序查找,在最坏的情况下所需要的比较次数是n
只有一个根节点的数据结构不一定是线性结构
查找是指在一个给定的数据结构中查找某个特定的元素
二分查找只适用于顺序存储的有序表
如果采用链式存储结构的有序线性表,只能用顺序查找
线性数据结构:线性表、队列、栈!
二叉树不是线性数据结构
队列是先进先出的线性表,而栈是先进后出的线性表,两个的共同点是:只允许在端点处插入和删除数据
归并排序是要求内存量最大的
数据的逻辑结构是与所使用的计算机无关的
顺序存储结构是随机存取的存储结构
链式存储结构是顺序存取的存储结构
在单链表中,增加表头节点的目的是:方便运算的实现
已知数据表A中每个元素距其位置不远,为节省时间,宜采用的算法是:直接插入排序
用链表表示线性表的优点是:便于插入和删除操作
关系模型采用二维表来表示
表框架由N个命名的属性组成,每个属性有一个取值范围称为值域
二维表由表框架及表的元组组成
数据是现实世界符号的抽象,数据模型是数据特征的抽象
数据模型描述的内容有三个部分:数据结构、数据操作和数据约束
程序设计
结构化程序设计的原则是:逐步求精->自顶向下->模块化
与信息隐蔽的概念直接相关的概念是 - 模块独立性
为了使模块尽可能独立,模块的内聚程度要尽量高,且各模块间的耦合程度要尽量弱
数据独立性是数据与程序间的互不依赖性
数据流图(DFD)是结构化方法的需求分析工具
在黑盒测试中,测试用例的主要根据是-程序外部功能
结构化程序设计主要强调的是:程序的易读性
结构分析常用的是:判定树、数据字典、数据流图,没有PAD图
源代码的文档化包括:符号命名要有意义、正确的程序注释、良好的视觉组织
在结构化设计方法中,生成的结构图中,带有箭头的连线表示:模块之间的调用关系
在面向对象的程序设计中,各个对象之间相对独立,相互依赖性小
面向对象
继承是指类之间共享属性和操作的机制
Python 3.x 解释器内部采用完全面向对象的方式实现
面向对象方法与人类习惯的思维方法一致
面向对象方法可重用性好
对象是属性和方法的封装体
对象间的通信靠消息传递
操作是对象的动态性属性
软件工程
软件工程是应用于计算机软件的定义、开发和维护的一整套方案、工具、文档和实践标准和工序
软件设计包括软件的结构、数据接口和过程设计
过程设计包括:系统结构部件转换成软件的过程描述
系统结构部件转换成软件的过程描述
软件是程序、数据与相关文档的集合
软件工程的主要思想是强调软件开发过程中需要应用工程化原则
软件工程设计工具:程序流程图、N-S、PAD、HIPO、判定表、PDL(伪码)
软件危机体现在三个方面:生产率低、质量难以控制、成本不断提高
软件测试的主要目的是发现程序中的错误
软件生命周期中开发阶段任务是:详细设计、软件测试、概要设计
软件调试的关键在于腿短程序内部的错误位置和原因
软件调试可以分为静态调试和动态调试
软件调试的主要方法有强行排错法、回溯法、原因排除法
软件交付使用后还需要进行维护
需求分析阶段的任务是:需求规格说明书评审、确定软件系统的功能需求、性能需求
在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是:需求设计
软件测试实施步骤中包括:单元测试、确认测试和集成测试
用于检测软件产品是否符合需求定义的是:确认测试
软件生命周期是指软件产品从提出、实现、使用维护到停止使用退役的过程
数据库
数据库技术的根本目标是要解决数据共享的问题
数据库系统的核心是:数据库管理系统
在数据库设计中,用E-R图来描述信息结构但不涉及信息在计算机中的表示的阶段是:概念设计阶段
数据库设计的四个阶段按顺序为:概念设计、需求分析、逻辑设计、物理设计
概念设计过程:由底向上、自顶向下、由内向外
数据库设计可以采用生命周期法
数据库设计是数据库应用的核心
数据库设计的基本任务是根据用户对象的信息需求、处理需求和数据库的支持环境设计出数据模式
当对关系R和S进行自然连接时,要求R和S含有一个或者多个共有的:属性
能够给出数据库物理存储结构与物理存取方法的是:内模式
在数据库中,索引属于:内模式
数据库设计中,反应用户对数据要求的模式是:外模式
描述单个用户使用的数据视图是:外模式
数据库系统减少了数据冗余
数据库设计内容的两个方面包括:概念设计和逻辑设计
关系数据库管理系统能实现的专门关系运算是:选择、投影、连接
设关系R是4元关系,关系S是一个5元关系,关系T是R与S的笛卡儿积,即T=R×S,则T是9元关系
数据库处理的最小单位是:数据项
数据库是一个结构化的数据集合
文件系统和数据库系统主要区别的:数据库系统具有特定的数据模型
数据库描述内容:数据操作、数据结构、数据约束
层次型、网状型和关系型数据库划分的原则是:数据之间的联系方式
在一个关系中,如果存在多个属性(或属性组)都能用来唯一标识该关系的元组,且其任何子集都不具有这一特性。该关系的这些属性(或属性组)被定义为候选码
某个数据约束规则为:设属性A是关系R的主属性,则属性A不能取空值。则该数据约束规则的名称是:实体完整性规则
将E-R图转换为关系模式时,可以表示实体与联系的是关系
在E-Rt图中,用来表示联系的图形是:菱形
属于概念数据模型的是:关系
数据模型按不同应用层次分为三种类型:概念数据模型、逻辑数据模型和物理数据模型
DML是数据操纵语言
DDL是数据定义语言
DCL是数据控制语言
对数据库进行规划、设计、维护、监视等管理工作的人员称为数据库管理员
数据库管理员对多个应用的数据需求作全面规划、设计与集成
数据库管理员需要完成数据库维护,完成对数据库中数据的安全性、完整性、并发性控制及系统恢复、数据定期转存等工作
其他
关系表中的每一横行成为元组
PFD图中用箭头表示控制流
二、python相关
编程语言基础
静态语言采用编译方式执行,脚本语言采用解释方式执行;
编译是将源代码转换成目标代码的过程;
解释是将源代码逐条转换成目标代码同时逐条运行目标代码的过程;
C语言是静态语言,Python语言是脚本语言
python语言特点:黏性扩展、平台无关、强制可读
python变量的命名特点:随时命名、随时赋值、随时使用
三种基本数字类型:整数类型、浮点数类型、复数类型
程序设计的基本结构:顺序、分支、循环
注意变量的命名不能以数字开头;变量名中不允许出现特殊符号例如*!等
python发生异常后经过适当的处理可以继续运行而不崩溃;
异常语句可以与 else 和 finally 保留字配合使用
局部变量为组合数据类型且未创建,等同于全局变量
局部变量和全局变量是不同的变量,但可以使用global保留字在函数内部使用全局变量
局部变量是函数内部的占位符,与全局变量可能重名但不同
假设函数中不包括global保留字,对于改变参数值的方法:参数是list类型时,改变原参数的值;参数是int类型时,不改变原参数的值;参数是组合类型(可变对象)时,改变原参数的值
程序设计基础
max是python的内置函数,所以应该这样用print(max(listV)),而这样用是错的print(listV.max())
执行 eval(“Hello”) 和执行 eval(" ‘Hello’ ") 得到不相同的结果,前者是错误的
fo.write(",".join(ls)+ "\n")数据之间用逗号分隔开,最后加一个换行
浮点数0.0和证书0具有相同的值,硬件执行单元,计算机指令处理方法和数据类型均不同
关于random.uniform(a,b)的作用:生成一个[a, b]之间的随机小数
range(1,4):是1~3
sorted(a,reverse = True)降序排列
python小知识
复数的虚数部分通过后缀“J”或者“j”来表示
组合数据类型可以分为 3 类:序列类型、集合类型和映射类型
python的索引下标从0开始
列表的切片[nⓂ️k] 从n到m,步长为k
Python 语言要求所有浮点数必须带有小数部分
x**y表示x的y次幂,其中,y也可以是整数
x // y x与y之整数商,即:不大于x与y之商的最大整数
python的字符编码均采用Unicode编码
chr(x) 和 ord(x) 函数用于在单字符和 Unicode 编码值之间进行转换
字符串比较规则:从第一个字符开始,一一比较编码大小,当一个字符串全部字符和另一个字符串前部分字符相同时,长度长的字符串为大
关于函数的可变参数,可变参数*args传入函数时存储的类型是tuple
f = lambda x,y:x+y 执行后,f的类型为function
保留字(后面附有所有的保留字表)
python的33个保留字
do不是python的保留字
Python 使用 def 保留字定义一个函数
序列类型
序列类型是一维元素向量,元素之间存在先后关系,通过序号访问
str、tuple 和 list 类型都属于序列类型
列表类型用以表示一维和二维数据
字典
字典是集合类型的延续,各个元素并没有顺序之分
字典是可以存储可变数量键值对的数据结构,键和值可以是任意数据类型
字典的主要用法是通过索引符号来实现查找与特定键对应的值
若想保持一个集合中元素的顺序,需要使用列表,而不是元组
字典要求键值对中的键是不可改变变量类型,所以d = {[1,2]:1, [3,4]:3}不能建立字典
d.get(key, default)根据键信息查找并返回值信息,如果key存在则返回相应值,否则返回default
与其他组合类型一样,字典可以遍历循环对其元素进行遍历for < 变量名> in < 字典名>的语法格式;其中for循环返回的变量名是字典的索引值。如果需要获得键对应的值,可以在语句块中通过get()方法获得:
for k in d: print(" 字典的键和值分别是:{} 和{}".format(k, d.get(k)))
1
2
文件
考题概览
当文件以文本文件方式打开时,读写按照字符串方式,采用当前计算机使用的编码或指定编码;
当文件以二进制文件方式打开时,读写按照字节流方式
writetext函数不是 Python 对文件的写操作方法.
高维数据有键值对类型的数据构成,采用对象方式组织;
二维数据采用表格方式组织,对应于数学中的矩阵;
一维数据采用线性方式组织,对应于数学中的数组和集合等概念
文本文件可以看成是由行组成的组合类型,因此,可以使用遍历循环逐行遍历文件
如果一个文本文件从网络中获得,增加encoding参数,指定编码方式打开;如果python程序生成了一个文件,并再次打开,则不需要指定encoding参数。
操作相关
创建写模式’x’
覆盖写模式w
只读模式r
追加写模式a
f.read()是最常用的一次性读入文件的函数,其结果是一个字符串;
f.readlines()也是一次性读入文件的函数,其结果是一个列表
f.write(s) 向文件写入一个字符串或字节流(要显式的使用’\n’对写入文本进行分
行)
f.writelines(lines)将一个元素为字符串的列表写入文件
f.seek(offset) 改变当前文件操作指针的位置 0-开头 2-结尾
CSV文件
CSV文件采用纯文本格式,通过单一编码表示字符
以行为单位,开头不留空行
每行表示一个一维数据,多行表示多维数据
以逗号分隔每列数据,列数据为空也要保留逗号
整个CSV文件是一个二维数据
CSV文件格式是一种通用的文件格式,应用于程序之间转移表格数据
CSV文件的每一行是一维数据,可以使用Python中的列表类型表示
time标准库
time.strftime()函数是时间格式化最有效的方法,几乎可以以任何通用格式输出时间。该方法利用一个格式字符串,对时间格式进行表达
time.perf_counter()返回一个CPU级别的精确时间计数值,单位是秒。由于这个计数值起点不确定,连续调用才有意义
time.sleep(5) 推迟调用线程的运行,单位为秒
第三方库
考题概览
数据分析的相关第三方库:numpy;scipy;pandas
python用于界面开发的第三方库有:pygtk、pyqt、wxpython
数据分析的第三方库有:numpy、pandas
数据可视化方向的第三方库有:mayavi2
适用于web开发的第三方库有:pyramid、flask、Django
网络爬虫的第三方库有:scrapy
jieba
三种模式:精确模式、全模式、搜索引擎模式
jieba.cut(s)是精确模式,返回一个可迭代的数据类型;
jieba.lcut(s)是精确模式,返回列表类型;没有冗余度;
jieba.lcut(s, cut_all = True)用于全模式,返回的是列表;冗余度最大
jieba.lcut_for_search(s)用于搜索引擎模式(首先执行精确模式,然后再对其中长词继续切分),返回的是列表;倾向于寻找短词语;具有一定的冗余度,但是比全模式冗余度小
jieba.add_word()函数,用来向jieba词库增加新的单词
Python 数据库 数据结构
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。