python--txt文件处理

1、打开文件的模式主要有,r、w、a、r+、w+、a+

file = open('test.txt',mode='w',encoding='utf-8')
file.write('hello,world!')
file.close()    #由此txt文件内容为hello,world!

 

2、r+:可读可写,根据光标所在位置开始执行。先写的话,光标在第一个位置---覆盖写,后读的时候根据光标所在位置往后读;但不管读几个字符,读过后,光标在文末

  建议:操作时,读和写分开比较好,编码时涉及到中文用utf-8

file = open('test.txt',mode='r+',encoding='utf-8')
file.write('Monday!')
content = file.read()  #content = file.read(6),表示读取6个字符,但只要读过后,光标会在文末
file.close()    #由此txt文件内容为:Monday!hello,world!
print(content)  #打印结果为:hello,world!
file = open('test.txt',mode='r+',encoding='utf-8')
content = file.read()
file.write('Monday!')
file.close()    #由此txt文件内容为:hello,world!Monday!
print(content)  #打印结果为:hello,world!

 

3、w+:可读可写。不管w还是w+,存在文件会清空重写,不存在文件会新建文件写;

  因为会清空重写,所以不建议使用

file = open('test.txt',mode='w+',encoding='utf-8')
file.write('哮天犬!')
file.close()   #由此txt文件内容为:哮天犬!

 

4、a:追加写。如果文件存在追加写,如果文件不存在,则新建文件写

file = open('test.txt',mode='a',encoding='utf-8')
file.write('哮天犬!')
file.close() #由此txt文件内容为:哮天犬!哮天犬!

 

5、读写多行操作

写多行

file = open('test.txt',mode='a',encoding='utf-8')
file.writelines(['\n二哈!','\n土狗!'])  #此处的\n为换行
file.close()
文件内容:
       哮天犬!
       二哈!
       土狗!            

读多行

file = open('test.txt',mode='r',encoding='utf-8')
content = file.readlines()   #读出的为列表
file.close()
print(content)
控制台输出:['哮天犬!\n', '二哈!\n', '土狗!']

 

 

总结:a:建议使用时读写操作分离,即不建议使用w+、r+、a+

   b:写的话,不建议使用w,建议使用a;读的话,使用r

      c:使用中文时,编码要使用utf-8

posted @ 2019-11-11 17:25  红枣枸杞  阅读(4193)  评论(0编辑  收藏  举报