Python学习笔记 十三 (文件使用)
文件的灵活使用可以很好的使程序变得简洁并且方便存储,下面我对我所学到的文件使用作出简单的总结,希望能对你我有益。
目录
- 文件类型
- 文件的打开关闭
- 文件的读写
一、文件的类型
文件是辅助存储在计算机上的数据序列,有文本文件类型、二进制类型。
- 文本文件是采用统一编码的文件类型,如utf-8编码
- 二进制文件是使用0-1进行组织的文件类型。
二、文件的打开关闭
变量名 = open(文件名, 打开模式) #文件打开
变量名.close() #文件关闭
- 其中在打开文件时,所填写的文件名为文件的路径+文件名,如果文件和程序在同一文件夹下可以省略路径。
- 打开模式有如下几种:
模式代码 | 含义 |
---|---|
rt | 文本形式,只读模式 |
w | 文本形式,覆盖写模式 |
a+ | 文本形式,追加写加读模式 |
x | 文本形式,创建写模式 |
b | 二进制形式,只读模式 |
wb | 二进制形式,覆盖写模式 |
+ | 可以和上面几种模式结合,表示在其基础上增加读写操作 |
Python提供默认模式是:文本形式,只读模式,即 rt 模式。
三、文件的读写
读文件
- f.read(< size >):读取文件内容,若没给大小则读取文件全部内容,若给则读size大小的内容。
- f.readline(< size >):读取文件一行的内容,若没给size则读取一行,若给了则按size读取内容。
- f.readlines(< size >):读取所有行文件内容,每行用列表表示,若给了size按照size读取行数。
f = open("D:\\CSDN博客\\py.txt",encoding='UTF-8')
print(f.read())
f.close()
注意:
- 在打开这个文件时,我遇到了文件编码不一致的问题,解决办法就是使用encoding = 'UTF-8’来限制编码即可解决。
- 在使用绝对路径时,由于在Python中 \ 表示转义字符,所以可以使用 / 来代替或者使用 \ \来恢复 \ 的意思。
写文件
- f.write(s):向文件写入一个字符串或者字节流。
- f.writelines(lines):将一个元素全为字符串的列表写入文件中。
- f.seek(偏移量,指针参数):改变操作文件的指针位置(可以理解为光标位置),当指针参数为:
0——表示文件开头,1——当前位置,2——文件结尾。
实例:为每一行添加一个!号
大致原理是将源文本按行处理,然后写入到另一个文件中。
f = open("D:\\CSDN博客\\py.txt", "rt", encoding='UTF-8')
fNew = open("D:\\CSDN博客\\pyNew.txt", "x+", encoding='UTF-8') #创建读写
for line in f.readlines():
line = line.replace("\n","") #将最后的换行符去掉
line_values = line + "!"
fNew.writelines(line_values + "\n") #加上!后将换行符加上
f.close()
fNew.seek(0,0) #由于操作后光标在最后,需要将光标移动到最前面才能显示文本
print(fNew.read())
fNew.close()
待续…