师从黑马程序员
文件编码
不同编码,将内容翻译成二进制也是不同的
查看文件编码
文件的读取
文件的概念
文件操作内容
主要包括打开,关闭,读,写
文件的操作步骤
open()打开函数
mode常用的三种基础访问模式
读操作相关方法
读操作相关方法
close() 关闭文件对象
with open语法
这里f代指文章中的文件对象
#打开文件
import time
f = open("D:/测试.txt", "r", encoding="UTF-8")
print(type(f))
#读取文件-read()
# print(f"读取10个字节的结果是:{f.read(10)}")
# print(f"读取全部内容的结果是:{f.read()}")
#如果程序中多次调用read,那么下一个read会在上一个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}")
# #文件的关闭
# f.close()
#
# time.sleep(500000)#暂停50万秒
# f.close()
#with open语法操作文件
with open("D:/测试.txt","r",encoding="UTF-8") as f:
for line in f:
print(f"每一行数据是:{line}")
time.sleep(500000)
操作汇总
案例:
f = open("D:/word.txt", "r", encoding="UTF-8")
#方法1:读取全部内容,通过字符串count方法统计itheima单词数量
# content=f.read()
# count=content.count("itheima")
# print(f"itheima在文件中出现了:{count}次")
#方法2:读取内容,一行一行读取
#判断单词出现次数并累计
count=0
for line in f:
line=line.strip()
words=line.split(" ")
for word in words:
if word=="itheima":
count+=1
print(f"itheima出现的次数是:{count}")
f.close()
文件的写出操作
写操作
import time
#打开不存在的文件
f=open("D:/test.txt","w",encoding="UTF-8")
f.write("Hello Wrold!!!") #内容写到内容中
#f.flush()
f.close()#close方法内置了flush的功能
#打开一个存在的文件
#文件存在 它会把内容清空
f=open("D:/test.txt","w",encoding="UTF-8")
f.write("黑马程序员")
f.close()
文件的追加操作
#打开不存在的文件
f=open("D:/test.txt","a",encoding="UTF-8")
f.write("黑马程序员")
f.flush()
f.close()
#打开一个存在的文件
f=open("D:/test.txt","a",encoding="UTF-8")
f.write("学Python最佳选择")
f.write("\n月薪过万")
注:a模式下调用write,不会清空原本的内容
案例:
fr=open("D:/bill.txt","r",encoding="UTF-8")
fw=open("D:/bill.txt.bak","w",encoding="UTF-8")
for line in fr:
line.strip()
if line.split(",")[-1]=="测试":
continue
fw.write(line)
fw.write("\n")
fr.close()
fw.close()
若有侵权,请联系作者