Python 自学 day04 函数为参数传递, 匿名函数, 文件操作

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()  #关闭文件  (关闭的时候一样会  将缓存区的内容写入文件)


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值