mode初识

python文件操作中经常用到的几种mode:r , rb ,w , wb , r+ , w+.

if mode = r ,意思是说,当前这个文件只能以“只读”模式打开,不能对文件内容进行操作。

  显示内容为原文件内容。比如,你文件里面是中文内容,那么显示还是中文的。如果是英文的,显示还英文的。

if mode = rb ,意思是说,当前这个文件只能以“只读”模式打开,而且,打开后的内容是以二进制方式显示,也就是机器语言显示。

  这种模式显示的内容为机器语言,即二进制、八进制、十六进制等编码,而不是原文件内容。

if mode = w ,意思是说,当前文件只能以“写入”模式打开的,可以对文件进行操作,比如增加内容、修改内容等。

  这种模式的文件,可以对其进行写入操作,f.write("i want  you. ').然后,print(f.read()),结果就能能看见你刚才输入进去的“i want you.”

if mode = wb ,意思是说,当前文件只能以二进制方式写入。

  在这种模式下,你要对文件进行操作,必须以二进制模式输入,比如要写入“i  want you .”的话,你必须先把这句话转换成二进制,然后才能写进去。f,write("转换后的二进制码").

if mode = r+, 意思是说,当前文件操作模式为:读写混合型的,先读后写。

  这是一种读和写都可以的混合模式,但是和w+模式油油区别,这个是先读已有文件内容,写入的内容都会在原文件末尾。等等

if mode = w+, 意思是说,当前文件的操作模式为:写读混合型的,先写后读。

  这种模式和上面的一样,输入混合模式,但是读出的结果不同。这里只会读到你刚刚输入的内容,而之前的内容相当于被替换了。这个方法用的时候一定要注意,因为容易造成原文件内容丢失。

 

写入文件时,经常用到几个方法:一个是f.tell(),返回光标位置,一个是f.seek(),返回你要指定定的光标位置。还有f.truncate(),返回截断后的内容,如果参数为1,那会返回第1个字符之后的内容。等等。

上面的写的估计有些问题,有待重新修改补充。

posted on 2018-05-23 16:55  hunson  阅读(607)  评论(0编辑  收藏  举报