PYTHON 4级等级考试资料
一.计算机基础知识
1. 第一台计算机
第一台计算机(ENIAC)于1946年2月在美国诞生。提出程序存储的是美国的数学家约翰冯诺依,美国陆军部的资助下,与1943年 ENIAC开始的研制,1946年完成。
约翰冯诺依曼(John von Neumann),美籍匈牙利数学家、计算机科学家、物理学家,现代电子计机与博弈论的重要创始人,被后人称为现代“计算机之父”、“博弈论之父,
精髓贡献:2进制思想、程序内存思想五大基本组件
2、EDVAC报
1945年,以冯诺依曼为首的 ENIAC机研制小组发表了一个全新的“存储程序通用电子计算机方案”EDVAC这份报告是计算机发展史上一个划时代的文献,它向世界宣告:电子计算机的时代开始了。

2. 计算机本质功能
从计算机的工作原理上来说,计算机的本质功能就是代替人类做极高速运算,解决了人类繁重的计算工作,从而使一切事物的数字化成为可能。
3. 计算机中的数据
计算机中的数据、信息都是二进制的形式表示的
4、计算机中的数据
计算机中的数据、信息都是二进制的形式表示的
5、二进制
二进制:是计算技术中广泛采用的一种数制
二进制数据是用0和1两个数码来表示的数
当前的计算机系统使用的基本上是二进制系统
6、二进制的优点
在计算机中采用二进制的原因:
1)技术实现简单

2)简化运算规则
加法:0+0=0 0+1 =1 1+1=10
乘法:0x0=0 0x1=0 1x1=1
3)适合逻辑运算-真假
太阳从西边升起 假
地球进行自转 真
冯诺依曼被称为“现代计算机之父 真
月亮围绕水星转 假
恐龙是虚构的 假
钻木可以取火 真
4)易于进行转换
7、计算机存储单位

b→B→KB→MB→GB→TB
从大到小顺序为TB、GB、MB(兆)、KB、B、b
位bit(比特):存放一位二进制数,即0或1,是最小的存单位[英文缩写:b(固定小写)]
字节byte:8个二进制位为一个字节(B),是最常用的存储单位

换算关系
1 Byte(B)=8 bit
1 Kilo Byte (KB)=1024B
1 Mega Byte (MB )=1024 KB
1 Giga Byte(GB)=1024Mb
1 Tera Byte(tB)=1024GB
“兆”为百万级数量单位
8.摩斯密码

9、ASCII表

0~31及127(共33个)是控制字符或通信专用字符(其余为可显示字符)
32~126(共95个)是字符(32是空格),
48~57为0到9十个阿拉伯数字,65~90为26个大写英文字母,97-122号为26个小写英文字母,其余为一些标点符号、运算符号等
数字的ASC码<大写字母的ASC码<小写字母的ASC码 (数大小)
10、Unicode
为每种语言的每个字符设定了统一且唯一的二进制编码
1、满足跨语言进行文本转换、处理
2、满足跨平台进行文本转换、处理
11、计算机应用

12、计算机解决问题过程

二、计算机系统

三、五大基本组件

控制器:控制程序执行
存储器:记忆程序和数据
输入设备:输入的数据和程序
输出设备:输出程序结果
1、中央处理器
中央处理器:英文 Central Processing Unit简称(CPU),由运算逻辑部件,寄存器部件和控制部件组成,他的功能主要是解释计算机指以及处理计算机软件中的数据,是一台计算机的核心和控制核心。cpu中包括控制器和运算器
2、运算器和控制器

3、存储器


4、外部设备
外部设备:也称外围设备,是除了本机以外的能直接或间接与计算机交换信息的装备
分类:
外存设备:除了计算机内存及CPU缓存以外的存储器,如u盘,磁带等
输入设备:用于向计算机系统输入命令和文本,数据等信息的部件,
键盘和鼠标是最基本的输入设备
输出设备:用于将计算机系统中的信息输出到计算机外部进行显示交换等的邮件显示器和打印机是最基本的输出设备
5、关联
三、Python知识
1、Python语言特点
1、简单易学
2、面向对象(交互性)
3、跨平台
4、解释型
5、开源
Python是一种脚本语言、多模型语言、通用语言
2、Python应用
Web应用开发
科学计算和统计
人工智能
游戏开发
自动化运维
金融量化
3、文件格式
.jpg、.ppt、.doc 、.py
4、Python文件书写注意:
1.严格注意代码的缩进
2、代码的缩进是一个Tab键或四个空格键
5、Python文件运行方式:
1、 windows命行
2调用IDLE启动
3、使用集成开发环境
4、文本译保存运行
6、Python模块
模块包含定义的函数和变量的文件,其后缀名是py
常用模块:
1、 pygame:用于电子游戏设计
2. random:用于生成随机数
3、time:提供各种操作时间的函数
4os:对大量文件和大量径进行操作
5.sys:系统模块
6. pyttsx3:文本到语音转换库
7、算法
在数学和计算机科学之中,算法为一个计算的具体步骤,常用于计算数据处理和自动推理
算法的特征:
1. 有穷性2.确切性3.输入项4.输出项5可行性
8、python数据类型

布尔值为 False的对象:
False(布尔类型)、 None、值为零的数(0,0.0)
空字符串、[]空列表、()(空元组)、{}(空字典)
9、字符串

1)字符串拼接符:
将多个字符串进行连接 +
注:+号左右两边必须为字符串
2)字符串复制符:
将字符串进行复制
注:号后边紧跟复制的次数
4)成员运算符:in
判断字符串中是否包含给定的字符
注:字符串中包含字符返回True
5)字符串长度 len()方法
10、转义字符和非转义字符
\n:换行
\t:相当一个空tab键
可以再字符前面添加一个r,来阻止反斜杠转义
11、字符串占位符
语法:“字符串 占位符”%(实际值)
语法:“字符串 占位符1 占位符2"%(值1,值2)
注:占位符的个数与真实值的个数对应
常见占位符:
%d:整型占位符 %f:浮点型占位符 %s:字符串占位符
12、列表
列表(list)定义:[元素1,元素2,元素3...]
注意
空列表定义:list = []
列表中的元素可以为任何数据型,包括本身列表类型
13、列表的插入和删除
append:在列表的末尾添加一个元素
insert:在指定的下标位置添加一个元素
remove:删除列表中的指定的元素
pop:删除列表中指定下标的元素
14、列表的运算
+:列表拼接符
用于拼接两个列表,加号两边必须都是列表才可以
*:列表复制符
用作和数字连接,表示该列表复制几次
in:成员运算符
用来判断列表中是否包含给定的列表
15、二维列表
维列表定义:[[元素1],[元素2],[元素3]]
注意:
二维列表中元素也为列表形式
二维列表元素的获取、添加、删除方式相与列表相似
获取二维列表的元素
列表名[一维下标][二维下标]
16、元组
元组(tuple)定义:(元素1,元素2,元素3...)
注意:
空元组定义:tuple =()
单个元元组定义:tuple =(1,)元察后需要加逗号
17、字典
字典(dictionary)定义:( key1: value1, key2: value2)
注意:
空字典定义:dict =0
在同一个字典中,键(key)必须是唯一的。
18、字典的获取
字典名[key]
19、数据类型转换
int():转换为整型
float():转换为浮点型
str():转换为字符型
bool():转换为布尔类型
20、变量
变量就是存储信息的容器
注意:
变量无须声明就可以直接赋值
变量必须先赋值才能使用
变量的数据类型可以随时改变,所以无需指定
变量的命名规则
以数字、字母、下划线组成、
区分大小写
不能包含空格
不能以数字开头
21、算术运算符
==(等于):比较两个对象是否相等
!=(不等于):比较两个对象是否不相等
>(大于):返回左侧值是否大于右侧值
<(小于):返回左侧值是否小于右侧值
>=(大于等于):返回左侧值是否大于等于右
<=(小于等于):返回左侧值是否小于等于右
结果返回布尔类型
22、赋值运算
=(赋值):c=10 将10赋值给C
+=(加等):c+=a 等效于c=c+a
=(减等):C-=a 等效于c=C-a
*=(乘等):c*=a 等效于c=c*a
/=(除等):c/=a 等效于c=c/a
%=(取余等):c%= a 等效于c =c % a
23、逻辑运算符
not(非):真假互换
and(与):都真才真
or(或):有真就真
24、分支结构
if 语句
if…else…语句
if elif else 语句
25、循环结构
while循环(其中while True循环使用比较多)
for in循环
26、range函数
range函数可以创建一个整数列表,一般用在for循环中
range0函数格式:range( start , stop , step )
参数说明:
start:计数从start开始,默认是从0开始
stop:计数到stop结束,但不包括stop
step:步长,默认为1
27、
break和continue
break:跳出循环
continue:跳出本次循环进行下一次循环
28、嵌套循环
在一个循环里嵌套另一个循环
for循环嵌套语法:
for 变置1 in 列表/字符串/字典:
for 变通2 in 列表/字符串/字典:
执行的代码2
执行的代码1
29、函数
函数:是组织好的,可以重复使用的,用来实现单一,或者相关联功能的代码段,我们可以称之为是方法。
调用函数的格式:
函数名()
def name():
print(“大家好,我是张三”)
name()
方法的执行顺序
def name(): ②
Print(‘大家好,我是张三’) ③
name() ①
①:调用方法
②:根据方法名找到对应的方法
③:执行方法中的每一行代码
函数的返回值:关键字: return
定义:选择性的向调用方返回一个表达式
def name():
return "大家好!我是xxx "say = name()
print(say)
传递函数
当进行函数调用的时候,要填入与函数形式参数个数相同的实际参数,在程序运行的过程中,实参会将参数值传递给形参,这就是函数的参数传递。
def name(str):
return ‘大家好!我是’+str
say = name(“xxx")
print(say)
30、流程图
流程图的概念︰
流程图也叫程序图,是人们将思考的过程和工作的顺序进行分析,整理,用规定的文字,符号,图形组合加以直观描述的方法。
流程图构造:
表示相应操作的程序框
框中的文字以及符号表示内容
带箭头的流程线
程序框外必要的文字说明
流程图符号:

流程图规则:
1.使用标准的图形符号
2.框图一般按照从上到下,从左到右的方向画图
3.除判断框外,大多数流程图符号只有一个进入点和一个退出点判断框可具有超过一个的退出点
4.判断框分为两大类,一类判断框True与False两个分支的判断,而且仅有两种结果;另一类是多条分支判断,有几种不同的结果
5.在图形符号内描述的语言要非常简练清楚
31、turtle库:
专门用来绘制图像在平面中移动,在它爬行的路径上绘制了图形
import turtle
海龟绘图特质:
1、海龟的特质,它会在屏幕上爬行留下痕迹
2、绘图的特质,也就是在绘图之前需要抬笔和落笔
Turtle方法:
设置绘图窗口的大小位置:
turtle.setup(width,height)
例:设置一个宽90高60的绘图窗口:
turtle.setup(width=90,height=60)
画笔落下:
turtle.pd()
turtle.pendown()
turtle.down()
画笔抬起:;
turtle.pu()
turtle.penup()
turtle.up()
设置画笔移动到某一个位置:
turtle.goto( -100,70 )
设置画笔前进的距离:
turtle.forward ( 100 )
关闭turtle :
turtle.done( )
绘制直线的过程:
抬笔 --> 移动位置 --> 落笔 --> 前进 --> 结束
设置画笔颜色∶
turtle.pencolor (‘red’)
颜色单词 -- blue yellow red black white 等
设置画笔向左转:
turtle.left ( 90 )
设置画笔向右转:
turtle.right ( 90 )
设置填充颜色:
turtle.fillcolor ('yellow')
设置画笔开始填充:
turtle.begin_fill()
设置画笔结束填充∶
turtle.end_fill()
设置画笔不可见:
turtle.hideturtle( )
设置画笔可见:
turtle.showturtle()
同时设置画笔颜色和填充颜色∶
turtle.color ('blue', 'red')
设置画笔移动的速度:
turtle.speed( 5)
设置画笔属性:
turtle.pen (speed = 1,pencolor = 'red')