字符编码与文件的处理 2018-3-22-23

字符编码

 

字符编码的定义:             输入电脑中的字符对应一个特定的数字

重点结论就一句:           要使编码不存在乱码情况就是,字符以什么标准而编码的,就要以什么标准解码

硬盘存储:现在的硬盘存储都是utf-8格式,一个汉字占用3个字节

python2  解释器默认格式为ASCII   (str类型按照头文件格式储存)

               所以python2中的str格式有两种,一种是默认的ACSII,另一种就是unicode

               转换方式是: unicode——(编码cencode)——>gdb

                                     gdb——(解码decode)——>unicode

python3  解释器默认格式为utf-8       (str被存成unicode)

头文件:指定解释器选择的解释格式(读文件的格式,读取格式必须跟编码格式一致)

bytes类型(二进制类型)用途:1.存放到文件中      2.基于网络的传输

文件处理

打开本地文件:open'打开文件的路径'    mode‘打开文件的模式’    encoding‘操作文件的字符编码’

关闭文件 (回收操作,节省系统资源) .clase()

f=open('a.txt'),默认打开的方式是rt(只读模式)模式。(默认打开的格式为gbk)

打开方式:文件默认打开方式是t模式,即文本模式

打开文件的操作,r,w,a

1:r模式,只读模式,(当文件名不存在时,报错)

2:w模式,只写模式,(当文件名不存在时,新建一个文件名,当文件名存在时,覆盖原来文件)

3:a模式,添加模式,(当文件名不存在时,创建新文件。当文件名存在时,输入文件添加到最后)

文件打开方式为b模式时,b模式即字节模式

注意:1.b模式不能单独使用,必须是rb,wb,ab。(t模式时,t可以省略)

           2.b模式下读写都是字节,以bytes为单位

           3.b模式下一定不能指定encoding参数(b模式下就一种,bytes)

文件的修改:

               f.seek()偏移量,移动的位置,单位是字节

文件修改的两种方式:

一:1,把文件类容全部读入内存,      2,在内存中修改文件         3.把修改后的文件再存入硬盘

(缺点:因为把文件全部读入内存,如果文件类容太多,会占用过多内存)

二:以读的方式一行一行打开文件,找到修改的进行修改,生成一个新文件,再把新文件覆盖到原来文件‘

 

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

posted @ 2018-03-22 19:17  tianyu105529  阅读(92)  评论(0编辑  收藏  举报