文件编码
编码技术即:翻译的规则,记录了如何将内容翻译成二进制,以及如何将二进制翻译回可识别内容。
为什么需要使用编码?
计算机只认识0和1,所以需要将内容翻译成O和1才能保存在计算机中。同时也需要编码,将计算机保存的0和1,反向翻译回可以识别的内容。
计算机中有许多可用编码:
UTF-8
GBK
Big5
UTF-8是目前全球通用的编码格式
除非有特殊需求,否则,一律以UTF-8格式进行文件编码即可。
文件读取
想想我们平常对文件的基本操作,大概可以分为三个步骤(简称文件操作三步走):
①打开文件
②读写文件
③关闭文件
注:read()读文件若不关闭文件,第二次read()操作读取的起始地址是第一次读取的末尾地址,也就是连续的,不是从头开始读。
f=open("E:/桌面文件/xkk.txt","r",encoding="UTF-8")
# print(f.read(5))
# print(f.read())#这次读的从第6个字符开始读到最后
lins=f.readlines()
print(lins)
结果
['x232465\n', 'k4356\n', 'k6346\n', '在345\n', '了5467\n', '13653\n', '2546\n', '34536']
练习
f=open("E:/桌面文件/xkk.txt","r",encoding="UTF-8")
# print(f.read(5))
# print(f.read())
lins=f.read()
num=lins.count('itheima')
print(num)
f.close()
f=open("E:/桌面文件/xkk.txt","r",encoding="UTF-8")
count=0
for i in f:
i=i.strip()#去掉开头和结尾的空格以及换行符
words=i.split(' ')
print(words)
for j in words:
if j=='itheima':
count=count+1
print(count)
文件写入
1.写入文件使用open函数的"(w模式进行写入
2.写入的方法有:
wirte(),写入内容
flush(),刷新内容到硬盘中
3.注意事项:
w模式,文件不存在,会创建新文件
w模式,文件存在,会清空原有内容
close()方法,带有flush()方法的功能
文件追加
1.追加写入文件使用open函数的"a”模式进行写入
2.追加写入的方法有(和w模式一致)∶
.wirte(),写入内容
.flush(),刷新内容到硬盘中
3.注意事项:
a模式,文件不存在,会创建新文件
a模式,文件存在,会在原有内容后面继续写入
可以使用”\n”来写出换行符
综合案例
f1=open("E:/桌面文件/xkk.txt","r",encoding="UTF-8")
f2=open("E:/桌面文件/xkk.txt.bak","w",encoding="UTF-8")
f3=open("E:/桌面文件/xkk1.txt","a",encoding="UTF-8")
f2.write(f1.read())
f1.close()
f2.close()
f1=open("E:/桌面文件/xkk.txt","r",encoding="UTF-8")
for i in f1:
i=i.strip()
words=i.split(',')
if words[-1]!='测试':
f3.write(i)
f3.write('\n')
f3.flush()
f3=open("E:/桌面文件/xkk1.txt","r",encoding="UTF-8")
lin=f3.read()
print(lin)