Python 文件读写的三种模式和区别

时间:2022-04-19 09:28:32

 #coding=utf-8
 #__author:Administrator
 #__time:2018/5/9 13:14
 #__file_name:text1
 import io

 #能调用方法的一定是对象
 def mod_r():
      w = io.open('text1', 'r')
      date = w.read()
      print(date)
      w.close()
 def mod_r_plus():
      w = io.open('text1', 'r+')
      w.write("使用r+模式进行的读写操作")
      print w.read()
      w.close()

 def mod_w():
      w = io.open('text1', 'w')
      w.write("使用w模式进行的写操作")
      w.close()
 def mod_w_plus():
      w = io.open('text1', 'w+')
      w.write("使用w+模式进行的读写操作")
      w.read()
      w.close()

 def mod_a():
      w = io.open('text1', 'a')
      w.write('使用a模式进行的读写操作')
      w.close()
 def mod_a_plus():
      w = io.open('text1', 'a+')
      w.write('使用a+模式进行的读写操作')
      print w.read()
      w.close()

 #mod_r()                #text1文本初始内容为‘abc’,屏幕打印‘abc’
 mod_r_plus()           #text1文本内容变成‘使用r+模式进行的读写操作’
 #mod_w()                #text1文本内容变成‘使用w模式进行的读写操作’
 #mod_w_plus()           #text1文本内容变成‘使用w+模式进行的读写操作’
 #mod_a()                #text1文本内容变成‘abc使用w+模式进行的读写操作使用a模式进行的读写操作’
 #mod_a_plus()           #text1文本内容变成‘abc使用w+模式进行的读写操作使用a模式进行的读写操作使用a+模式进行的读写操作’

  '''
  总结:
   r:只可读;r+:可读可写,若文件不存在,报错
   w:只可写;w+: 可读可写,若文件不存在,创建
   a:附加写方式打开,不可读;a+: 附加读写方式打开
   f.close()关闭文件保证把没有写入的数据全部写入磁盘
   w新建只写,w+新建读写,二者都会将文件内容清零
   r+,w模式会对当前文件进行覆盖
  bug:
   r+,w+,a,a+模式打印文件内容出现乱码 �� �  �  8 �8 � Ќ 0
  '''

  '''
  2018年5月12日更新
  bug解决方法:
  头文件引用io
  open打开文件方式为io.open
  '''