python中的文件操作

2021/11/5 11:10:06

本文主要是介绍python中的文件操作,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

python中的文件操作

文件的类型

1.文件是存储在辅助存储器上的数据序列,是数据存储的一种形式
2.文件的展现形式为文本文件和二进制文件,本质上,所有文件都是二进制形式存储的
3.文本文件由单一特定编码组成的文件,如UTF-8编码。由于存在编码,也被看成是存储着的长字符串,比如.txt,.py文件等。
4.直接由比特0和1组成,没有统一字符编码,比如.png,.avi文件等

文件的打开操作关闭

文件的使用包括文件的打开-文件的操作(读取和写入)-文件的关闭(特别注意文件的打开和文件的操作的区别)
文件的打开

文件名就是为了能够找到文件。
比如一个文件的路径为D:\python\f.txt 那在文件中应该写成 "D:/python/f.txt" "D:\\python\\f.txt"。使用/或\\来代替\
当源文件同目录时可以省路径。
文件的打开方式

文件的打开模式
描述
'r'(read) 只读模式,默认值,如果文件不存在,返回FileNotFoundError
'w'(write) 覆盖写模式,文件不存在则创建,存在则完成覆盖
'x'(create) 创建写模式,文件不存在则创建,存在则返回FileExistsError
'a'(append) 追加写模式,文件不存在则创建,存在则在文件最后追加内容
'b' 二进制文件模式
't' 文本文件模式,默认值
'+' 与r/w/x/a一同使用,在原功能基础上增加同时读写功能

前面r,w,x,a选择的是打开的模式,后面的b,t选择的是文件类型,前后搭配使用。

# 以文本形式只读打开,加上encoding='utf-8'是因为打开中文文件可能会出错
tf = open("f.txt","rt",encoding='utf-8')
# 以二进制形式只读打开
bf = open("f.txt","rb")

文件内容的读取

操作方法 描述
.read(size=-1) 读入全部内容,如果给出参数,读入前size长度
.readline(size=-1) 读入一行内容,如果给出参数,读入该行前size长度
.readlines(hint=-1) 读入文件所有行,以每行为元素形成列表。如果给出参数,读入前hint行
# 文件的全文本操作
fo = open(f.txt,'r')
txt = fo.read()    # 一次读入,统一处理
fo.close()

fo = open(f.txt,'r')
txt = fo.read(2)    # 按数量读入,逐步处理
while txt !="":
  txt = fo.read(2)
fo.close()

# 文件的逐行操作
fo = open(f.txt,'r')
for line in fo.readlines():   # 一次读入,分行处理
  print(line)
fo.close()

fo = open(f.txt,'r')
for line in fo:   # 分行读入,逐行处理
  print(line)
fo.close()

文件内容的写入

操作方法
描述
.write(s) 向文件写入一个字符串或字节流
.writelines(lines) 将一个元素全为字符串的列表写入文件
.seek(offset) 改变当前文件操作指针的位置,offset含义如下:0-文件开头;1-当前位置;2-文件结尾
fo = open("f.txt","w+")     # 打开f.txt,即可读又可写
ls = ["小红","小明","李华"]
f.writelines(ls)
fo.seek(0)    # 指针在文件的结尾,让指针重新回到文件的开头,读取才有输出
for line in fo:
  print(line)
fo.close()
>>>小红小明李华
# 文件的写入如果需要空格换行需要自己加入" "和"\n",不然都是以紧凑的形式写入 

文件的关闭
<变量名>.close



这篇关于python中的文件操作的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程