Python基础复习提纲(上机练习) 2021-2022学年高中信息技术浙教版(2019)必修1数据与计算

文档属性

名称 Python基础复习提纲(上机练习) 2021-2022学年高中信息技术浙教版(2019)必修1数据与计算
格式 doc
文件大小 305.5KB
资源类型 教案
版本资源 浙教版(2019)
科目 信息技术(信息科技)
更新时间 2022-05-14 07:12:32

图片预览

文档简介

Python基础复习提纲(上机练习)
1.编程环境(IDLE)的使用
Python代码编程环境有很多,但自带的安装Python时自带的IDLE已经可以应付大多数的代码编程需求.在IDLE中,代码的不同成分会被用不同的颜色标识出来,这个功能被称之为:代码高亮.不同编程环境的高亮颜色不一样.
2.编译和解释
编译:将源代码一次性转为机器代码,而后将不在需要源代码,(C/C++,Java)
解释:将源代码逐条转为机器代码同时逐条运行,每次都需要重新从源代码执行(Python,PHP)
温度转换实例分析代码的组成要素
先演示一下程序运行结果,然后让他们自己敲一遍。
1.程序的格式框架:代码缩进
代码缩进标识代码间的层次和包含关系,相同的缩进代表相同的代码层级关系.Python中的代码一般用一个Tab键或四个空格标识一个缩进,注意两个缩进格式不能混用
2.注释
代码可以添加注释,用来解释说明代码的功能或含义,提高代码的可读性.
注释可以分为单行注释和多行注释
单行注释用“#”开头,多行注释的本质是字符串
3.变量
变量是用来存储和标识数据的一种标识符.变量好比一个空盒子,对变量赋值的过程就是往盒子里存东西的过程,而对变量的计算或输出就是将存进去的东西拿出来的用的过程.
变量的命名规则:
1.变量名只能由数字,字母和下划线(英文)三种字符构成.
Python比较特殊,还允许使用汉字作为变量名,但为了和其他语言保持统一,我们这里不考虑这种情况.
2.变量名不能用数字开头
3.变量名区分大小写
4,变量名不能和保留字相同
Python中的保留字(共35个)
变量赋值语句:变量名 = 值
注意和判断语句:变量名 == 值区分
4.常见的数据类型(用Type()函数观察)
1.数值类型:分为整数(int)类型和实数(浮点数,float)类型
2.字符串类型(string): ord() ; chr()
3.布尔类型(boolear):True , False(注意大小写)
数值类型的表示
十进制:1234
二进制:0b0101,0B1010
八进制:0o123,0O456
十六进制:0xFF,0X5a
练习:请计算以下表达式,并上机验证结果
0o754 + 0x4f = 492 + 79 = 571
0xf**0b11+2.0= (15)**3+2.0 = 3377.0(float)
pow(19,2) = 19**2 = 361
round(6,-1) = 10
数值类型的操作函数(内置)
求绝对值 abs()
求幂 pow(x,y[,z]) x**y%z
求四舍五入 round(x[,y]) 保留y位小数,y可以为负
数值类型混合运算:向更精确的方向
1+2.0=3.0
运算符及其运算优先级
运算符 功能和作用 示例 优先级
( ) 小括号 略 0(最高)
** 幂运算 略 2
~ 按位取反 ~n = -n-1 1
* / // % 乘,除,整除,取余 整除:不大于除法结果的最大整数;取余:x%y=x-y(x//y) 3
+ - 加法、减法 略 4
& 按位与 0b1111&0b1010=0b1010 5
^ 按位异或 0b1111^0b1010=0b0101 6
| 按位或 0b1111|0b1010=0b1111 7
< > == <= >= != 关系运算符 结果为布尔类型 8
in not in 存在性判断 结果为布尔类型 9
not 非 10
and 与 11
or 或 12
4.基本输入输出函数
输入函数:input()
1)input()函数的参数为输出提示字符,在程序没有特殊要求的时候可以不写,这个功能主要是为了增强程序的交互性.
2)input()获取的内容是在控制台输入的,按下Enter前的全部内容.且格式为字符串类型
3)常见的input()获取数据后的转换函数:int()强制转为整数,float()强制转为小数,eval()去掉字符串的双引号.
输出函数:print()
1)print()是在控制台进行输出,一般的要求函数内参数为字符串格式
2)print()内的参数为单一格式(如数值或数值类型变量)时,print()会默认将值转为字符格式后输出
3)当输出混合格式时,需要用格式化输出(%或format方法)
‘转换后的温度是:%d℃’%22.5(%d为整数,%f为实数,%s为字符串)
"转换后的温度%.2f℃,湿度%.2f"%(22.345,5.677)(.2f表示小数点后保留两位)
“%40s”%”今天的温度是十摄氏度”(默认右对齐)
“%-40.2s”%”今天的温度是十摄氏度”
format的具体使用方法
“圆周率可以近似为:{}".format(3.1415926)
"转换后的温度{:.2f}℃,湿度{:.2f}".format(23.456,5.678)
"转换后的温度{1:5.2f}℃,湿度{0:-^20.2f}".format(h,t)
练习:写出下列结果的format格式
‘python ’(宽度为20)
'************Python************'(宽度为30)
练习:写出下列格式化输出的结果
"{0:-^20,}".format(12345.6789)
"{0:-^20.3f}".format(12345.6789)
"{:>15s}:{:<8.2f}".format("length",23.87501)
特殊情况,在print()中还可以使用“,”将不同类型的值进行连接
print('现在是北京时间',3,':',08)
5.字符串类型和序列
序列是一种组合数据类型,将多个值放在一个变量中存储
a = [0,1,2,3,4,5]
b = [0,'1',2,'3',4,'5']
字符串是一种特殊的序列
s = 'hello' 可以看做 s = ['h','e','l','l','o']
对值的读取通过索引(下标)获取,索引有正向索引和反向索引两种
s[i] 索引
s[i:j] 切片,含头不含尾
s[i:j:k] 步骤分片,步骤默认为1,可以为负(为负时首尾默认交换)
练习:用多种方法从字符串s中截取一段内容,并上机验证
S = “千山鸟飞绝,万径人踪灭”
用四种方法截取 “鸟飞绝”
用四种方法截取 “灭踪人”
其他常见操作
1.判断s1是否是s的子串:s1 in s 或 s1 not in s
2.字符串连接 s1 + s2
3.字符串复制并连接 s1 *n
4.求字符串长度len(s)
5.求字符串最大最小值 min(s) max(s)
s.append(x) #在列表的最后添加一个元素x
s.clear() #清空列表s中的所有元素
s.insert(i,x) #在s的第i位置增加元素x
s.pop(i) #将s第i 位置的元素删除
s.remove(x) #将列表中第一次出现的x字符删除
s.upper() #全部小写转大写
s.lower() #全部大写转小写
s.split(sep) #根据sep分割字符串s
s.count(sub) #统计sub在s中出现的次数
s.join(iter) #用s对iter做分隔符
s.reverse() #将s的内容反转
s.sort(reverse) #对序列排序 reverse=True(降序)/False(升序,默认)
python之禅 >>>import this 凯撒加密(位移13位,加密和解密代码相同)
字典类型极其应用json格式和中国天气网
d = {"姓名":"小明","年龄":13,"性别":"男"}
字典类型的特点是用花括号将复杂的数据类型整合到一起
字典的每个值都由两部分组成 "键":"值" 整个合起来叫键值对
1.字典的值只能通过键索引,因为字典内部是无序排列的
例如我要获取"小明",则应该用 d["姓名"] 注意键的格式要和存储的格式相同
2.字典添加新值或修改原有值都是一样的
修改 : d["性别"] = "女" 添加 d[1] = 1
3.想单纯的输出字典的键或字典的值
输出字典的键 list(d.keys())
输出字典的值 list(d.values())
4,删除字典中的某个值
del d["年龄"]
字典类型的应用 网络传输所使用的json数据格式,或者二维码包含的信息
import requests
r = requests.get("http://wthrcdn./weather_mini city=温州")
r.encoding = 'utf-8'
date = r.json()
print(date["data"]["forecast"][0]["type"])
程序控制结构
顺序结构|分支结构|循环结构
分支结构(案例:小明上学问题)
单分支 if
双分支 if...else...
多分支结构 if...elif...else
练习:BMI实现
BMI = 体重(Kg) / 身高2(m2)
循环结构
遍历循环for 变量 in 序列或range
无限循环while 关系式
控制字符break,continue
练习:百钱百鸡,韩信点兵
练习:百钱买白鸡问题的代码实现
我国古代数学家张丘建在《算经》一书中曾提出过著名的“百钱买百鸡”问题,该问题叙述如下:鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一;百钱买百鸡,则翁、母、雏各几何?翻译过来,意思是公鸡一个五块钱,母鸡一个三块钱,小鸡三个一块钱,现在要用一百块钱买一百只鸡,问公鸡、母鸡、小鸡各多少只?
用Python解百钱买百鸡问题,循环结构使用任意一种都可,注意优化循环次数
练习:用Python解韩信点兵问题
在一千多年前的《孙子算经》中,有这样一道算术题:“今有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二,问物几何?”按照今天的话来说:一个数除以3余2,除以5余3,除以7余2,求这个数。这样的问题,也有人称为“韩信点兵”。它形成了一类问题,也就是初等数论中的解同余式。(总数在1000~1100之间)
算法(鸡兔同笼问题)
解析算法
枚举算法
练习:尝试用分别用解析算法和枚举算法实现鸡兔同笼问题
大约在1500年前,《孙子算经》中就记载了这个有趣的问题。书中是这样叙述的:
‘今有雉兔同笼,上有三十五头,下有九十四足,问雉兔各几何 ’
这四句话的意思是:有若干只鸡兔同在一个笼子里,从上面数,有35个头,从下面数,有94只脚。问笼中各有多少只鸡和兔?
函数和自定义函数
定义函数是为了将某些特定功能的代码段放在一起,提高代码的可读性和代码的复用率(案例:重复唱生日歌,带名字的生日歌,计算多次鸡兔同笼,统计计算次数(全局变量))
def 函数名(参数1=默认值,参数2……):
函数内容
[return 返回值]
函数的参数传递
函数的局部变量和全局变量的使用
递归函数(自己调用自己)
import引用的方法
1.import <库名>
2.import <库名> as <重命名>
3.from <库名> import <函数名>
4.from <库名> import *
案例:
import math
print(math.sin(4))
import math as m
print(m.sin(4))
from math import sin
print(sin(4))
#print(cos(4))
from math import *
print(sin(4))
#print(cos(4))
常用标准库:math库、random库(详见必修1,P85页)
第三方库的使用 pip安装流程
pip install <库名>