python语言程序设计基础的复习笔记
第一章内容
1.在python语言中解释和编译的区别
①编译
编译是将源代码转换成目标代码的过程。 源代码是计算机高级语言的代码,而目标代码则是机器语言的代码。 执行编译的计算机程序称为编译器(Compiler)
②解释
解释是将源代码逐条转换成目标代码,同时逐条运行目标代码的过程。 执行解释的计算机程序称为解释器(Interpreter)
编译和解释的区别
编译是一次性的翻译,一旦程序被编译,不需要编译,不在需要编译程序后或者源代码,
解释则在每次程序运行时都时需要解释器和源代码。
编译的过程只进行一次
2.Python语言的特点有哪些
1.语法简结
2.与平台无关
3.粘性扩张
4 .开源理念
5.通用灵活
6.强制可读
7.支持中文
8、模式多样
9.类库丰富
3.运行Python程序的两种方式和具体内容
第一种方法:
交互式
具体内容:
通过Windows命令行工具进行交互式运行python。同时按下Windows键和R键,启动“运行”,在“运行”中输入cmd然后回车,即弹出命令行工具,然后输入python回车,
第二种方法:
文件式启动
具体内容:
按照Python的语法格式去编写代码,并保存为.py形式的文件。
一些习题的练习:
1.1
整数序列求和,用户输入一个正整数N,计算从1到N(包含1和N)相加之后的结果
https://s1.ax1x.com/2022/11/01/xT2QRs.png
这道题考察的知识点是:
range()函数的for循环
意思是将到N之前的结果全部进行打印
range()函数有两种格式: <1>
range(stop)
一般默认0为下标
<2>
range(start,stop[,step])
1.2
计算1+2!+3!+.......+10!的结果。
image 20221030141123745 - 路过图床
第二章的知识点复习
关于turtle库的主要用途和介绍
2.2.1 turtle库概述 turtle(海龟)库是turtle绘图体系的Python实现
-
turtle绘图体系:1969年诞生,主要用于程序设计入门
-
Python语言的标准库之一
-
入门级的图形绘制函数库
绘图坐标体系:
tuetle.setup(width,height,startx,starty)
作用:设置主窗体的大小和位置
画笔控制函数:
turtle.penup()\turtle.up()\turtle.pu()
作用:抬起画笔,之后移动画笔不绘制形状
turtle.pendown()\turtle.down()\turtle.pd()
作用:落下画笔,之后移动画笔会绘制形状
turtle.pensize(width)\turtle.width()
作用:设置画笔宽度,无参数时返回当前画笔宽度
turtle.pencolor(colorstring)\turtle.pencolor((r,g,b))
作用:设置画笔颜色,无参数时返回当前画笔颜色
形状绘制函数:
turtle.fd(distance)\turtle.forward(distance)
作用:向小海龟当前行进方向前进distance个像素的距离
turtle.seth(to_angle)\turtle.setheading(to_angle)
作用:设置小海龟当前前进方向为to_angle,该角度是绝对方向角度值
turtle.circle(radius, extent=None)
作用:根据半径radius绘制extent角度的弧形
2.1:
import turtle turtle.setup(650,350,200,200) turtle.penup() turtle.fd(-250) turtle.pendown() turtle.pensize(25) turtle.pencolor("purple") turtle.seth(-40) for i in range(4): turtle.circle(40,80) turtle.circle(-40,80) turtle.circle(40,80/2) turtle.fd(40) turtle.circle(16,180) turtle.fd(40*2/3)
第三章知识复习重点
p62的表3.1,了解八进制、十六进制表示
3.1 数字类型及操作 3.1.1 整数类型
可正可负,没有取值范围限制 pow(x,y)函数:计算 x^y,想算多大算多大 4种进制表示形式 十进制:1010, 99, -217 二进制,以0b或0B开头:0b010, -0B101 八进制,以0o或0O开头:0o123, -0O456 十六进制,以0x或0X开头:0x9a, -0X89 ————————————————
3.1.2浮点数类型
-
浮点数间运算存在不确定尾数
>>> 0.1 + 0.3 0.4 >>> 0.1 + 0.2 0.30000000000000004 ---不确定尾数
-
round(x, d):对x四舍五入,d是小数截取位数 浮点数间运算及比较用round()函数辅助
>>> 0.1 + 0.2 == 0.3 False >>>round(0.1 + 0.2) == 0.3 True
11.科学计数法的表示 (p63)
浮点数有两种表示方法:十进制表示和科学计数法表示
科学计数法用e或E作为幂的符号,以10为基数
$$
<a>e<b> = a*10^b
$$
例如:4.3e-3 值为0.0043 9.6E5 值为960000.0
12.复数的实部和虚部的表示 (p65、p66:3.4)
复数可以看作是实数对(a,b),表示为a+bj,其中a是实数部分,b是虚数部分。
在Python语言中,复数的虚数部分通过后缀“J”或“j”表示,如:
$$
1.23e-4+5.67e+89j
$$
复数其实就是实数在二维平面空间旋转的一种表示。
对于复数z,可以用z.real和z.imag来分别获取它的实部和虚部。例如:
>>>(1.23e-4+5.67e+89j).real 0.000123 >>>(1.23e-4+5.67e+89j).imag 5.67e+89
课后习题的练习:
问: python语言为什么要使用浮点型和整型常量
答 :为了使运算的精度更高,因为用浮点型常量,会导致在15位之后进行了不准确性。
问: 复数2.3e+3-1.34e-3j的实部和虚部分别是什么?采用什么方法提取一个复数的实部和虚部?
答: 实部:2.3e 虚部:-1.34e
>>>(2.3e+3-1.34e-3j).real #获取实部 >>>(2.3e+3-1.34e-3j).imag #获取虚部
14.p66-p67 表3.2,p67运算规则
python语言程序设计基础的复习笔记第一章内容1.在python语言中解释和编译的区别①编译 编译是将源代码转换成目标代码的过程。 源代码是计算机高级语言的代码,而目标代码则是机器语言的代码。 执行编译的计算机程序称为编译器(Compiler) ②解释 解释是将源代码逐条转换成目标代码,同时逐条运行目标代码的过程。 执行解释的计算机程序称为解释器(Interpreter) 编译和解释的区别 编译是一次性的翻译,一旦程序被编译,不需要编译,不在需要编译程序后或者源代码, 解释则在每次程序运行时都时需要解释器和源代码。 编译的过程只进行一次 2.Python语言的特点有哪些1.语法简结 2.与平台无关 3.粘性扩张 4 .开源理念 5.通用灵活 6.强制可读 7.支持中文 8、模式多样 9.类库丰富 3.运行Python程序的两种方式和具体内容第一种方法: 交互式 具体内容: 通过Windows命令行工具进行交互式运行python。同时按下Windows键和R键,启动“运行”,在“运行”中输入cmd然后回车,即弹出命令行工具,然后输入python回车, 第二种方法: 文件式启动 具体内容: 按照Python的语法格式去编写代码,并保存为.py形式的文件。 一些习题的练习: 1.1 整数序列求和,用户输入一个正整数N,计算从1到N(包含1和N)相加之后的结果 这道题考察的知识点是: range()函数的for循环 意思是将到N之前的结果全部进行打印 range()函数有两种格式: <1> range(stop) 一般默认0为下标 <2> range(start,stop[,step]) 1.2 计算1+2!+3!+.......+10!的结果。 第二章的知识点复习关于turtle库的主要用途和介绍2.2.1 turtle库概述 turtle(海龟)库是turtle绘图体系的Python实现
绘图坐标体系: tuetle.setup(width,height,startx,starty) 作用:设置主窗体的大小和位置 画笔控制函数: turtle.penup()\turtle.up()\turtle.pu() 作用:抬起画笔,之后移动画笔不绘制形状 turtle.pendown()\turtle.down()\turtle.pd() 作用:落下画笔,之后移动画笔会绘制形状 turtle.pensize(width)\turtle.width() 作用:设置画笔宽度,无参数时返回当前画笔宽度 turtle.pencolor(colorstring)\turtle.pencolor((r,g,b)) 作用:设置画笔颜色,无参数时返回当前画笔颜色 形状绘制函数: turtle.fd(distance)\turtle.forward(distance) 作用:向小海龟当前行进方向前进distance个像素的距离 turtle.seth(to_angle)\turtle.setheading(to_angle) 作用:设置小海龟当前前进方向为to_angle,该角度是绝对方向角度值 turtle.circle(radius, extent=None) 作用:根据半径radius绘制extent角度的弧形 2.1: import turtle turtle.setup(650,350,200,200) turtle.penup() turtle.fd(-250) turtle.pendown() turtle.pensize(25) turtle.pencolor("purple") turtle.seth(-40) for i in range(4): turtle.circle(40,80) turtle.circle(-40,80) turtle.circle(40,80/2) turtle.fd(40) turtle.circle(16,180) turtle.fd(40*2/3) 第三章知识复习重点p62的表3.1,了解八进制、十六进制表示3.1 数字类型及操作 3.1.1 整数类型 可正可负,没有取值范围限制 pow(x,y)函数:计算 x^y,想算多大算多大 4种进制表示形式 十进制:1010, 99, -217 二进制,以0b或0B开头:0b010, -0B101 八进制,以0o或0O开头:0o123, -0O456 十六进制,以0x或0X开头:0x9a, -0X89 ———————————————— 3.1.2浮点数类型
>>> 0.1 + 0.2 == 0.3 False >>>round(0.1 + 0.2) == 0.3 True 11.科学计数法的表示 (p63)浮点数有两种表示方法:十进制表示和科学计数法表示 科学计数法用e或E作为幂的符号,以10为基数 $$ 例如:4.3e-3 值为0.0043 9.6E5 值为960000.0 12.复数的实部和虚部的表示 (p65、p66:3.4)复数可以看作是实数对(a,b),表示为a+bj,其中a是实数部分,b是虚数部分。 在Python语言中,复数的虚数部分通过后缀“J”或“j”表示,如: $$ 复数其实就是实数在二维平面空间旋转的一种表示。 对于复数z,可以用z.real和z.imag来分别获取它的实部和虚部。例如: >>>(1.23e-4+5.67e+89j).real 0.000123 >>>(1.23e-4+5.67e+89j).imag 5.67e+89 课后习题的练习: 问: python语言为什么要使用浮点型和整型常量 答 :为了使运算的精度更高,因为用浮点型常量,会导致在15位之后进行了不准确性。 问: 复数2.3e+3-1.34e-3j的实部和虚部分别是什么?采用什么方法提取一个复数的实部和虚部? 答: 实部:2.3e 虚部:-1.34e >>>(2.3e+3-1.34e-3j).real #获取实部 >>>(2.3e+3-1.34e-3j).imag #获取虚部 14.p66-p67 表3.2,p67运算规则
运算规则:
3.3 字符串类型及操作 3.3.1 字符串类型的表示 字符串由一对单引号或一对双引号表示 "请输入带有符号的温度值: "或者 ‘C’ 字符串是字符的有序序列,可以对其中的字符进行索引 “请” 是 "请输入带有符号的温度值: " 的第0个字符 由一对单引号或双引号表示,仅表示单行字符串 由一对三单引号或三双引号表示,可表示多行字符串 若要在字符串中包含双引号或单引号 ‘这里有个双引号(")’ 或者 “这里有个单引号(’)” 如果希望在字符串中既包括单引号又包括双引号呢? ‘’’ 这里既有单引号(’)又有双引号 (") ‘’’ 3.3.2 字符串的使用
字符串切片高级用法 ——— 使用[M: N: K]根据步长对字符串切片 <字符串>[M: N],M缺失表示至开头,N缺失表示至结尾 “〇一二三四五六七八九十”[:3] 结果是 “〇一二” <字符串>[M: N: K],根据步长K对字符串切片 “〇一二三四五六七八九十”[1:8:2] 结果是"一三五七" “〇一二三四五六七八九十”[::-1] 结果是 “十九八七六五四三二一〇” 3.3.3 字符串操作符
3.3.4 字符串处理函数
19 .19.format()函数 p85-p88 思考与练习 3.21槽的内部样式如下: {<参数序号>:<格式控制标记>}
>>>"{0:30}".format(s) #默认左对齐 'Python ' >>>"{0:>30}".format(s) #右对齐 ' Python' >>>"{0:*^30}".format(s) #居中且使用*填充 '************Python************' >>>"{0:-^30}".format(s) #居中且使用-填充 '------------Python------------' >>>"{0:-^20,}".format(1234567890) #千位分隔符 '---1,234,567,890----' >>>"{0:-^20}".format(1234567890) #对比输出 '-----1234567890-----' >>>"{0:.2f}".format(12345.67890) #对于浮点数,精度表示小数部分输出的有效位数 '12345.68' >>>"{0:.4}".format("Python") #对于字符串,精度表示输出的最大长度 'Pyth' 对于整数类型,输出格式包括以下六种:
>>>"{0:b},{0:c},{0:d},{0:o},{0:x},{0:X}".format(425) '110101001,Ʃ,425,651,1a9,1A9' 对于浮点数类型,输出格式包括以下四种:
>>>"{0:e},{0:E},{0:f},{0:%}".format(3.14) '3.140000e+00,3.140000E+00,3.140000,314.000000%' >>>"{0:.2e},{0:.2E},{0:.2f},{0:.2%}".format(3.14) '3.14e+00,3.14E+00,3.14,314.00%' 3.21: >>>print("{:>15s}:{:<8.2f}".format("Length",23.87501)) Length:23.88 第四章知识点复习20.p105 实例代码 5.14.2 "身体质量指数BMI"实例讲解 # e5.1CalBMI height, weight = eval(input("请输入身高(米)和体重\(公斤)[逗号隔开]:")) bmi = weight / pow(height, 2) print("BMI数值为:{:.2f}".format(bmi)) who, dom = "", "" if bmi < 18.5: # who标准 who = "偏瘦" elif bmi < 25: # 18.5<=bmi<25 who = "正常" elif bmi < 30: # 25<=bmi<30 who = "正常" else: who = "肥胖" if bmi < 18.5: # 我国卫生部标准 dom = "偏瘦" elif bmi < 24: # 18.5<=bmi<24 dom = "正常" elif bmi < 28: # 24<=bmi<28 dom = "正常" else: dom = "肥胖" print("BMI指标为:国际'{0}',国内'{1}'".format(who,dom)) 21.p107 思考与练习 4.11判断题:Python中条件24<=28<25是合法的,且输出为False 对。24<=28<25等价于24<=28 and 28<25,即true and false,这样结果就是false 22.p109中break和continue用法的区别break用来跳出最内层for或while循环,脱离该循环后程序从循环代码后继续执行。每个break语句只有能力跳出当前层次循环。 continue用来结束当前当次循环,即跳出循环体中下面未执行的语句,但不跳出当前循环。 continue语句和break语句的区别是,continue语句只结束本次循环,而不终止整个循环的执行;而break语句则是结束整个循环过程,不在判断执行循环的条件是否成立。 23.p112 表4.3 randint(a,b)randint(a,b) 生成一个[a,b]之间的整数 24.函数定义的格式 p124Python使用def保留字定义一个函数: def <函数名>(<参数列表>): <函数体> return<返回值列表> 函数名可以是任何有效的Python标识符 25.p127 中lambda函数和def函数等价转换 p128思考与练习 5.1、5.2、5.3lambda是Python的32个保留字之一,用于定义一种特殊的函数——匿名函数,又称lambda函数。匿名函数有函数名,只是将函数名作为函数结果返回。 lambda语法格式如下: <函数名> = lambda <参数列表>:<表达式> 等价于: def <函数名>(<参数列表>) return <表达式> 26.函数返回时的return语句 p129return语句用来推出函数并将程序返回到函数被调用的位置继续执行。return语句可以同时将0个、1个或多个函数运算后的结果返回给函数被调用处的变量。 函数也可以没有return,此时函数并不返回值。 27.了解全局变量和局部变量 p130-131全局变量是指在函数之外定义的变量,一般没有缩进,在程序执行全过程有效。 局部变量指在函数内部使用的变量,仅在函数内部有效,当函数退出时变量将不存在。 28.type()函数,len()函数type()函数返回每个数据对应的类型 len()函数返回对象中项目的数量 29.p160-162 列表的操作 思考与练习 6.4、6.7列表是包含0个或多个对象引用的有序序列,属于序列类型。 列表类型的操作:
6.4 列表ls=[2,5,7,1,6],请对列表按照升序和降序的方式分别排列。请使用Python内置函数。 ls = [2, 5, 7, 1, 6] ls.sort() #升序 print(ls) ls.sort(reverse=True) #降序 print(ls) 6.7 列表ls=[[2,3,7],[[3,5],25],[0,9]],len(ls)值是多少? >>>ls=[[2,3,7],[[3,5],25],[0,9]] >>>len(ls) 3 30.p167 字典的操作 思考与练习 6.11字典类型的操作:
6.11 判断题:在字典里,同一个键可以对应两个或多个值。 对 31.了解文本open()函数,write()函数 p184 表7.2 p185 表7.3Python通过解释器内置的open()函数打开一个文件,并实现该文件与一个程序变量的关联。 open()函数的格式如下: <变量名> = open(<文件名>,<打开模式>) open()函数有两个参数:文件名和打开模式。open()函数提供7种打开模式:
文件的读写: Python提供四个常用的文件内容读取方法:
Python提供三个与文件内容写入有关的方法:
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
-
二元操作符有对应的增强赋值操作符
x op = y,即x = x op y,其中,op为二元操作符 x += y x -= y x*= y 等
运算规则:
-
整数之间运算,如果数学意义上的结果是小数,结果是浮点数
-
整数之间运算,如果数学意义上的结果是整数,结果是整数
-
整数和浮点数混合运算,输出结果是浮点数
-
整数或浮点数与复数运算,输出结果是复数
3.3 字符串类型及操作
3.3.1 字符串类型的表示
字符串由一对单引号或一对双引号表示 "请输入带有符号的温度值: "或者 ‘C’
字符串是字符的有序序列,可以对其中的字符进行索引 “请” 是 "请输入带有符号的温度值: " 的第0个字符
由一对单引号或双引号表示,仅表示单行字符串
由一对三单引号或三双引号表示,可表示多行字符串
若要在字符串中包含双引号或单引号 ‘这里有个双引号(")’ 或者 “这里有个单引号(’)”
如果希望在字符串中既包括单引号又包括双引号呢? ‘’’ 这里既有单引号(’)又有双引号 (") ‘’’
3.3.2 字符串的使用
-
索引:返回字符串中单个字符 <字符串>[M] "请输入带有符号的温度值: "[0] 或者 TempStr[-1]
-
切片:返回字符串中一段字符子串 <字符串>[M: N] "请输入带有符号的温度值: "[1:3] 或者 TempStr[0:-1]
字符串切片高级用法 ——— 使用[M: N: K]根据步长对字符串切片
<字符串>[M: N],M缺失表示至开头,N缺失表示至结尾 “〇一二三四五六七八九十”[:3] 结果是 “〇一二” <字符串>[M: N: K],根据步长K对字符串切片 “〇一二三四五六七八九十”[1:8:2] 结果是"一三五七" “〇一二三四五六七八九十”[::-1] 结果是 “十九八七六五四三二一〇”
3.3.3 字符串操作符
-
x + y 连接两个字符串x和y
-
n * x 或 x * n 复制n次字符串x
-
x in s 如果x是s的子串,返回True,否则返回False
3.3.4 字符串处理函数
-
len(x) 长度,返回字符串x的长度 len(“一二三456”) 结果为 6
-
str(x) 任意类型x所对应的字符串形式 str(1.23)结果为"1.23" str([1,2])结果为"[1,2]"