在文件中完成基本的输入输出操作,python中通过内置函数open,实现对文件的读取操作。
基本操作:打开文件-操作文件-关闭文件
文件对象: 文件名 操作模式 编码信息
操作模式 | 具体含义 |
---|---|
'r' | 读取(默认) |
'w' | 写入(会先截断之前的内容) |
'x' | 写入(如果文件已经存在会产生异常) |
'a' | 追加,将内容写入到已有的文件末尾 |
'+' | 更新(既可以读又可以写) |
'b' | 二进制模式 |
't' | 文本模式(默认) |
方法 | 功能 |
fp = open() | 以不同模式打开文件,返回文件对象fp |
fp.read | 从文件对象fp中读出全部字符(直到文件末尾),并返回一个字符串 |
fp.readlines | 从文件对象fp中读取数据,直到文件末尾,并返回一个行数据列表 |
fp.close | 关闭文件对象fp |
一、读取文本文件
- 使用open函数指定带路径的文件名,文件模式设置为'r'。(注意:路径有绝对路径和相对路径之分,正确使用二者均可以)
- 使用encoding参数指定编码(默认值为none)
打开文件的方法:encoding='utf-8'(作用是识别语言的模式,最好加上去,否则有可能会编译失败)
1.fp = open('E:\\test\\落叶.txt','r',encoding='utf-8')
2.fp = open('E:/test/落叶.txt','r',encoding='utf-8')
2.fp = open('./落叶.txt','r',encoding='utf-8') #在当前的目录下
fp.read()
fp.close()
读取文本文件的方式:
1.一次性读取文件
#一次性读取文件内容
fp = open('E:\\test\\落叶.txt', mode='r', encoding='utf-8')
print(fp.read())
2.for in 循环逐行读取
fp = open('E:\\test\\落叶.txt', mode='r', encoding='utf-8')
for line in fp:
print(line,end ='')
readlines 逐行读取,返回列表
fp = open('E:\\test\\落叶.txt', mode='r', encoding='utf-8')
line = fp.readlines() #读取时包括换行符
print(line)
通过strip()函数,将readlines 逐行读取的换行符去掉
for line in fp.readlines():
line = line.strip()
print(line)
二、写入文本文件
在open()函数中将文件模式设置为'w'(写入文本若不是str类型,则需转换为str类型再写入),若是在文件中追加内容则设置为'a'。