读书笔记:([1)文件读写

电脑杂谈  发布时间:2020-09-27 08:03:20  来源:网络整理

硬盘写入是什么意思_固态硬盘写入是什么意思_硬盘写入是什么意思

首先,只有一个选项可以在python3中操作文件,即open()

在python2中,有两种方法:file()和open()都可以打开文件,对文件进行操作并具有相似的用法和参数。

但是,这两种文件打开方法之间有本质的区别。文件是文件类型。使用file()打开文件等效于构造文件类型。但是,使用open()打开文件使用python内置函数进行操作,我们通常使用open()打开文件进行操作,并使用file作为类型,例如type(f)是file

句子格式

以open(filename,mode ='r',encoding ='utf-8')作为文件:#使用关键字with和open函数以指定的模式和字符格式打开关键字,并将其分配给变量

带有关键字#的代码将自动执行close()操作,即自动关闭文件以在程序结束时进行保存

open()#是一个打开函数,用于打开文件

文件名#是文件名或文件路径

模式#是打开模式

encoding#指定读取文件的方式PS:打开文本文件时,必须指定字符串的打开方式

作为#also关键字

文件#是变量

有打开文件的模式

(默认为文本模式,t模式):

固态硬盘写入是什么意思_硬盘写入是什么意思_硬盘写入是什么意思

r,只读模式[默认模式,文件必须存在,如果不存在,则将引发异常]

w,仅写模式[不可读;创建它是否不存在;清除内容(如果存在)

a,附加书写模式[不可读;创建它是否不存在;仅添加内容(如果存在)

PS:对于非文本文件,我们只能使用b模式,“ b”表示以字节为单位进行操作(并且所有文件也都以字节为单位存储,使用此模式不需要考虑文本文件的字符编码,jgp图片文件的格式,视频文件的avi格式)

rb#以字节模式打开只读

wb#以字节模式重写

ab#以字节模式追加

注意:以b模式打开时,读取的内容为字节类型,写入时必须提供字节类型,并且无法指定编码

示例:将open('e.txt',mode ='wb')设置为f:

f.write('Hello \ n'.encode('utf-8')#​​在此处以b模式写入时,必须将其编码为指定格式并写入磁盘

将指针移动到文件中(即,指定打开或写入时在何处打开或写入)

主动控制文件中指针的移动

seek(参数1,参数2)#如果参数的值为2,则光标将移至指针的末尾。这时,参数1必须指定从末尾读取多少字节,它必须是数字开头,而不是正数

参数1:要移至控件的字节数

固态硬盘写入是什么意思_硬盘写入是什么意思_硬盘写入是什么意思

参数2:控制参考的位置

0(默认值):指文件的开头

1:参考指针的当前位置

2:指向指针文件的末尾

PS:强调:正常模式下只能使用模式0,模式b只能使用模式1和2

示例:将open('e.txt',mode ='rb')设置为f:

f.seek(6,0)

f.read(3)

f.seek(3,1)

print(f.tell())

print(f.read()。decode('utf-8'))

f.seek(-8,2)

print(f.read()。decode('utf-8'))

f.seek(0,2)

print(f.tell())

了解零件

“ +”表示可以同时读取和写入文件

r +,读写[read and write] #r模式是只读的,不具有擦除或覆盖的功能,因此读写模式是在写入时将内容添加到文件末尾

w +,写和读[可读,可写] #w模式的特点是在写之前先擦除,因此在w +模式下打开时,首先清除文件,然后写入新内容,仅写操作导入模式会添加一个仅限阅读功能

a +,写和读[可读可写] #a模式具有附加特征,并且不会像w模式那样擦除原始内容,因此将读取模式添加到附加模式

x,只写模式[不可读;如果不存在,请创建,如果存在,则报告错误]

x +,写和读[读和写]

一些用于读写文件的操作

f.read()#读取所有内容,将光标移到文件末尾

f.readline()#读取一行内容,然后将光标移动到第二行的开头

f.readlines()#读取每行的内容并将其存储在列表中

f.write('1111 \ n222 \ n')#在文本模式下书写时,您需要自己编写换行符

f.write('1111 \ n222 \ n'.encode('utf-8'))#对于以b模式编写,您需要自己编写换行符

f.writelines(['333 \ n','444 \ n'])#文件模式

f.writelines([bytes('333 \ n',encoding ='utf-8'),'444 \ n'.encode('utf-8')])#b模式

f.visible()#文件是否可读

f.writable()#文件是否可读

f.closed#文件是否关闭

f.encoding#如果文件打开方式为b,则没有此类属性

f.flush()#立即将文件内容从内存中刷新到硬盘f.name

关于阅读

1.在文本模式下打开文件时,意味着读取了3个字符。

2.以b模式打开文件时,意味着读取了3个字节

其余文件中的光标移动以字节为单位,例如查找,告诉,截断

PS:Seek具有三种移动方法0、1、2,其中1和2必须以b模式执行,但是无论在哪种模式下,它都以字节为单位移动。

PS:截断是一个截断的文件,因此该文件的打开方法必须是可写的,但不能使用w或w +打开,因为该文件是直接清空的,因此截断应在r +或a或a +中进行测试模式

搜索有三种移动方式

0、1、2,其中1和2必须以b模式执行,但是无论在哪种模式下,它们都以字节为单位移动。

truncate是被截断的文件

因此,打开文件的方法必须是可写的,但不能用w或w +打开,因为直接清除了文件,因此应在r +或a或a +模式下测试截断。


本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/dianqi/article-322232-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      • 张祥钰
        张祥钰

        可怜了我父母攒钱攒了一辈子到头来

      • 韩春宁
        韩春宁

        要会打仗才行

      • 吴潇璞
        吴潇璞

        如今美国不可能再有机会给你

      热点图片
      拼命载入中...