【第七章——文件】【最新!黑马程序员Python自学课程笔记】课上笔记+案例源码+作业源码

本文详细介绍了Python中文件的读取操作,包括`open()`函数、`read()`、`readlines()`、`readline()`以及`withopen`的使用,还展示了文件的写入(包括覆盖和追加)以及一个文件备份的综合案例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

第七章-文件

7.1文件编码概念

7.2文件的读取操作

"""
演示对文件的读取
"""
import time

# 打开文件
f = open("E:/jufe.txt", "r", encoding="UTF-8")
print(type(f))

# 读取文件-read()
# print(f"读取10个字节的结果:{f.read(10)}")


# print(f"read方法读取全部内容的结果是:{f.read()}")


print("---------------------------------------------------------------------------------------")
# 读取文件-readLines()
# lines=f.readlines()# 读取文件的全部行,封装到列表中
# print(f"lines对象的类型:{type(lines)}")
# print(f"lines对象的内容是:{lines}")


# 读取文件-readLine()
# line1=f.readline()
# line2=f.readline()
# line3=f.readline()
# print(f"第一行数据是:{line1}")
# print(f"第二行数据是:{line2}")
# print(f"第三行数据是:{line3}")


# for循环读取文件行[每一次,就可以读取每一行数据]
for line in f:
    print(f"每一行数据是:{line}")

# 文件的关闭
# time.sleep(500000) # 暂停执行500000秒
f.close()
time.sleep(500000)

# with open 语法操作文件[进行with open操作后,文件会自动关闭,推荐使用]
with open("E:/jufe.txt", "r", encoding="UTF-8") as f:
    for line in f:
        print(f"每一行数据是:{line}")
time.sleep(500000)

7.3文件读取的课后练习

# 打开文件,以读取模式打开
f=open("E:/word.txt","r",encoding="UTF-8")
# 方法一:读取全部内容,通过字符串count方法统计itheima单词数量
# content=f.read()
# count=content.count("itheima")
# print(f"文件里itheima的数目是:{count}")



# 方法二:读取内容,一行一行读取
count=0
for line in f:
    line=line.strip() # 去除开头和结尾的空格 以及 换行符
    words=line.split(" ")# 进行split切分,得到一个个词
    for word in words:
        if word=="itheima":
            count+=1

# 判断单词出现次数并累计
print(f"itheima出现的次数是:{count}")


# 关闭文件   注意!一定要写 关闭
f.close()

7.4文件的写出操作

"""
演示文件的写入
"""
# import time
#
# # 打开文件,不存在的文件
# f=open("E:/test.txt","w",encoding="UTF-8")
# # write写入
# f.write("hello,world") # 内容写入到内存中
#
# # flush刷新
# # f.flush()               #将内存中积攒的内容,写入到硬盘的文件中
# # time.sleep(600000)


# 打开一个存在的文件[若文件存在,他会清空已有内容,将新的内容覆盖上去]
f=open("E:/test.txt","w",encoding="UTF-8")
# write写入,flush刷新
f.write("niuma")


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

7.5文件的追加写入操作

"""
演示文件的追加写入
"""
# 打开文件,不存在的文件
# f=open("E:/text.txt","a",encoding="UTF-8")
# # write写入
# f.write("niuma aaaaaaaaaa")
# # flush刷新
# f.flush()
# # close关闭
# # f.close()

# 打开一个存在的文件
f=open("E:/text.txt","a",encoding="UTF-8")
#  write写入、flush刷新
f.write("\n别学了")
# # close关闭
f.close()

7.6文件操作的综合案例

"""
演示文件操作综合案例:文件备份
"""
# 打开文件得到文件对象,准备读取
fr=open("E:/bill.txt","r",encoding="UTF-8")
# 打开文件得到文件对象,准备写入
fw=open("E:/bill.txt.bak",'w',encoding="UTF-8")
# for循环读取文件
for line in fr:
    line=line.strip()
    # 判断内容,将满足的内容写出
    if line.split(",")[4]=="测试":
        continue # continue进入下一次循环,这一次后面的内容就跳过了
    # 将内容写出去
    fw.write(line)
    # 由于前面对内容进行了strip()的操作,所以要手动的写出换行符
    fw.write("\n")
# close 2个文件对象
fr.close()
fw.close()  # 写出文件调用close() 会自动flush()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值