01 文件编码概念

文件编码

python 文件读写 python 文件读写追加_python

python 文件读写 python 文件读写追加_python 文件读写_02

python 文件读写 python 文件读写追加_python 文件读写_03

查看文件编码

python 文件读写 python 文件读写追加_开发语言_04

总结

02 文件读取

什么是文件

python 文件读写 python 文件读写追加_文件编码_05

文件操作包含那些内容?

python 文件读写 python 文件读写追加_读取文件_06

文件的操作步骤

python 文件读写 python 文件读写追加_python 文件读写_07

open() 打开函数  

python 文件读写 python 文件读写追加_python_08

mode 常用的三种基础访问模式

python 文件读写 python 文件读写追加_python 文件读写_09

读操作相关方法 - read()  、readlines()、readline()

python 文件读写 python 文件读写追加_文件编码_10

python 文件读写 python 文件读写追加_文件编码_11

演示 - read()  、readlines()、readline()

首先准备一个.txt文件,随便写点内容

"""
演示对文件的读取
"""
# 打开文件  open(文件路径,操作方式,文件编码)  操作方式:r 只读打开 w 创建新的文件  a 追加文件内容
f = open('F:/测试.txt','r',encoding="UTF-8")
print(type(f))

# 读取文件 - read(num)   num 是要读取文件的字节数,不传就是读取全部
# print(f"读取10个字节:{f.read(10)}")
# print(f"读取全部内容:{f.read()}")
"""
注意:如果在一个程序中连续调用多个read()
     那后面调用的read()会在前面的读取
     操作后面继续读取文件内容,也是就是说后面读取
     的内容不包含前面的文件内容
"""

# 读取文件 - readlines()
# print(f.readlines())  # 读取文件的全部行,封装在列表中列表中的每个元素对应文件的每一行

# 读取文件 - readline()
print(f.readline())  # 一次读取一行
print(f.readline())  # 一次读取一行

python 文件读写 python 文件读写追加_python_12

for 循环读取文件行 

python 文件读写 python 文件读写追加_开发语言_13

演示

# for 循环读取文件行
# 打开文件  open(文件路径,操作方式,文件编码)  操作方式:r 只读打开 w 创建新的文件  a 追加文件内容
f = open('F:/测试.txt','r',encoding="UTF-8")
print(type(f))

for line in f:
    print(f"每个item都是一行数据:{line}")

close() 关闭文件对象

python 文件读写 python 文件读写追加_python 文件读写_14

with open 语法

python 文件读写 python 文件读写追加_读取文件_15

演示 

# with open 语法操作文件 (文件操作完成会自动关闭文件,相当于自动调用.close()方法)
with open('F:/测试.txt','r',encoding="UTF-8") as f:
    for line in f:
        print(f"每个item都是一行数据:{line}")

python 文件读写 python 文件读写追加_python_16

操作汇总

python 文件读写 python 文件读写追加_文件编码_17

总结

python 文件读写 python 文件读写追加_开发语言_18

练习:

python 文件读写 python 文件读写追加_python_19

itheima itcast python
itheima python itcast
beijing shanghai itheima
shenzhen guangzhou itheima
wuhan hangzhou itheima
zhengzhou bigdata itheima

演示

# with open 语法操作文件 (文件操作完成会自动关闭文件,相当于自动调用.close()方法)
with open('F:/测试.txt','r',encoding="UTF-8") as f:
    my_list = f.readlines()  # f.readlines() 读取全部文件放到列表中
    my_str =""   # 接收转换后的字符串

    for x in  my_list:  # 循环my_list列表
        my_str+=x       # 将列表的内容拼接成字符串

    length = my_str.count("itheima") # 统计字符串”itheima“出现的数量
    print(f"length = {length}\n{my_list}")

python 文件读写 python 文件读写追加_文件编码_20

03 文件的写入

写操作快速入门

python 文件读写 python 文件读写追加_python_21

演示

"""
演示对文件的写入
"""
# 打开文件,不存在的文件  open(文件路径,操作方式,文件编码)  操作方式:r 只读打开 w 创建新的文件  a 追加文件内容
# f = open('F:/测试2.txt','w',encoding="UTF-8")

# write 写入
# f.write("Hello World!!!")   # 内容写入到内存中

# flush 刷新
# f.flush()  # 将内存积攒的内容写入到电脑的硬盘文件中

# close 关闭
# f.close()   # close()方法是内置了flush()方法的功能

# 打开一个存在的文件(w 当文件不存在就创建,若文件存在就会清空文件内容)
f = open('F:/测试2.txt','w',encoding="UTF-8")

# write写入,flush 刷新
f.write("Hello,张三!!!")   # 内容写入到内存中

# close 关闭
f.close()

python 文件读写 python 文件读写追加_python_22

  

总结

python 文件读写 python 文件读写追加_python 文件读写_23

04 文件的追加

追加写入操作快速入门

python 文件读写 python 文件读写追加_开发语言_24

演示

"""
演示对文件的追加
"""
# 打开文件,不存在的文件  open(文件路径,操作方式,文件编码)  操作方式:r 只读打开 w 创建新的文件  a 追加文件内容
# f = open('F:/测试3.txt','a',encoding="UTF-8")

# write 写入
# f.write("Hello World!!!")   # 内容写入到内存中

# flush 刷新
# f.flush()  # 将内存积攒的内容写入到电脑的硬盘文件中

# close 关闭
# f.close()   # close()方法是内置了flush()方法的功能

# 打开一个存在的文件(a 当文件不存在就创建,若文件存在就会在文件内容后面追加)
f = open('F:/测试3.txt','a',encoding="UTF-8")

# write写入,flush 刷新
f.write("Hello,张三!!!")   # 内容写入到内存中

# close 关闭
f.close()

python 文件读写 python 文件读写追加_开发语言_25

总结

python 文件读写 python 文件读写追加_python 文件读写_26

05 文件操作综合案例(完成文件备份)

name,date,money,type,remarks
周杰轮,2022-01-01,100000,消费,正式
周杰轮,2022-01-02,300000,收入,正式
周杰轮,2022-01-03,100000,消费,测试
林俊节,2022-01-01,300000,收入,正式
林俊节,2022-01-02,100000,消费,测试
林俊节,2022-01-03,100000,消费,正式
林俊节,2022-01-04,100000,消费,测试
林俊节,2022-01-05,500000,收入,正式
张学油,2022-01-01,100000,消费,正式
张学油,2022-01-02,500000,收入,正式
张学油,2022-01-03,900000,收入,测试
王力鸿,2022-01-01,500000,消费,正式
王力鸿,2022-01-02,300000,消费,测试
王力鸿,2022-01-03,950000,收入,正式
刘德滑,2022-01-01,300000,消费,测试
刘德滑,2022-01-02,100000,消费,正式
刘德滑,2022-01-03,300000,消费,正式

python 文件读写 python 文件读写追加_文件编码_27

python 文件读写 python 文件读写追加_读取文件_28

演示

"""
练习-备份文件
"""
# 打开文件,不存在的文件  open(文件路径,操作方式,文件编码)  操作方式:r 只读打开 w 创建新的文件  a 追加文件内容
f = open('F:/bill.txt','r',encoding="UTF-8")       # r 读取目标文件
f1 = open('F:/bill.txt.bak','a',encoding="UTF-8")  # a 追加文件内容,文件不存在就会创建,存在就会追加内容到最后
# write 写入
for x in f:
    if x.count("测试") == 0 :  # count() 统计指定字符出现的数量,等于0表示这条是正式的数据,不是测试数据
        f1.write(x)   # 如果不是测试数据就写入该条数据

# flush 刷新
f1.flush()  # 将内存积攒的内容写入到电脑的硬盘文件中

# close 关闭    close()方法是内置了flush()方法的功能,
f.close()   # 关闭目标文件
f1.close()  # 关闭备份文件

python 文件读写 python 文件读写追加_python_29