1. 函数作为参数传递 (类似C++ 函数指针)
def func(x):
mm = x(1,2);
#print(f"mm的值是{mm}")
return mm
def add(x,y): #加法
return x+y
def reduce(x,y): # 减法
return x-y
def ride(x,y): # 乘法
return x*y
def divide(x,y): #带有小数点除法
return x/y;
def integer_divide(x,y): #整除
return x//y;
def remainder(x,y): # 取余
return x%y;
print(f"1+2的结果是{func(add)}")
print(f"1-2的结果是{func(reduce)}")
print(f"1*2的结果是{func(ride)}")
print(f"1/2的结果是{func(divide)}")
print(f"1//2的结果是{func(integer_divide)}")
print(f"1+2的结果是{func(remainder)}")
2.lambda 匿名函数
2.1 函数的定义
. def关键字,可以定义带有名称的函数
. lambda关键字,可以定义匿名函数(无名称)
有名称的函数,可以基于名称重复使用。
无名称的匿名函数,只可临时使用一次。
2.2 匿名函数的定义语法
2.3匿名函数的样例
与上面的 函数作为参数传递相对比 (看加法) :
add ~= lambda x,y : x+y #函数名 与等于 匿名函数
区别: 前面的生命周期为程序结束, 后面的生命周期为调用的一瞬间!!
def func(x):
mm = x(1,2);
#print(f"mm的值是{mm}")
return mm
print(f"1+2的结果是{func(lambda x,y : x+y)}")
print(f"1-2的结果是{func(lambda x,y : x-y)}")
print(f"1*2的结果是{func(lambda x,y : x*y)}")
print(f"1/2的结果是{func(lambda x,y : x/y)}")
print(f"1//2的结果是{func(lambda x,y : x//y)}")
print(f"1+2的结果是{func(lambda x,y : x%y)}")
3. 文件编码
3.1 什么是编码
编码就是一种规则集合,记录内容和二进制间进行相互转换的逻辑。编码有许多中,我们最常用的是UTF-8编码。
3.2文件编码的种类
3.2.1 UTF-8
3.2.2 GBK
3.2.3 Big5 (等等)
4.文件操作
4.1 文件操作有哪些
4.1.1 打开文件
4.1.2 读取文件
4.1.3 写入文件
4.1.4 关闭文件
4.2 open()打开函数
4.2.1 参数1 : 文件路径和 文件的名字
4.2.1 参数2 : 文件的打开模式
4.2.3 , 参数3 , 使用关键字传递, (因为opne 函数有很多的参数, 参数1和参数2 是固定的位置,所以位置传递值,参数3 是关键字传递 )
4.3 样例代码
f = open("C:/Users/86150/Desktop/计划表.txt","r",encoding="UTF-8") #打开文件
print(f"f的类型是{type(f)}")
5. 读取文件的方法
5.1 函数read()
5.1.1 read(num) num 是字符数
5.1.2 read() 默认读取全部
5.1.3 代码样例 (注意代码里面的文件地址)
f = open("文件地址","r",encoding="UTF-8") #打开文件
print(f"f的类型是{type(f)}")
print("--------------------")
name = f.read(5) #读取五个字符
name1 = f.read() # 读取全部的内容
print(f"name的内容是{name}")
print("--------------------")
print(f"name1的内容是{name1}")
5.2 函数readlines()
5.2.1 函数功能:读取文件的全部行.封装到列表中
5.2.2 样例代码 (注意代码里面的文件地址)
f = open("文件地址","r",encoding="UTF-8") #打开文件
print(f"f的类型是{type(f)}")
print("--------------------")
name = f.readlines() #读取文件的全部行.封装到列表中
print(f"name的内容是{name}")
5.3 函数read()
5.3.1 函数功能: 读取文件的一行数据.封装到列表中
5.3.2 样例代码 (注意代码里面的文件地址)
f = open("文件地址","r",encoding="UTF-8") #打开文件
print(f"f的类型是{type(f)}")
print("--------------------")
name = f.readline() #读取文件的一行数据.封装到列表中
print(f"name的内容是{name}")
6. 文件里面写入数据
6.1 基本知识点介绍
6.2 文件写入清空写
f = open("文件地址","w",encoding="UTF-8") #打开文件
print(f"f的类型是{type(f)}")
print("--------------------")
f.write("内容") #向清空的文件写入内容
f.flush() #刷新内存,将会缓存区的内容写入文件中
f.close() #关闭文件 (关闭的时候一样会 将缓存区的内容写入文件)
6.3 文件追加写入
f = open("文件地址","a",encoding="UTF-8") #打开文件
print(f"f的类型是{type(f)}")
print("--------------------")
f.write("内容") #向清空的文件写入内容
f.flush() #刷新内存,将会缓存区的内容写入文件中
f.close() #关闭文件 (关闭的时候一样会 将缓存区的内容写入文件)