Python3 文件读写

Python open() 方法用于打开一个文件,并返回文件对象,在对文件进行处理过程都需要使用到这个函数

1. 读取文件

with open('test_json_dumps.txt', mode='r', encoding='utf-8') as f:

    # seek()移动光标至指定位置
    f.seek(0)

    # read()读取整个文件,将文件内容放到一个字符串变量中,文件大于可用内存时不适用
    res = f.read()
    print(res)

    # readline()每次只读取一行,通常比readlines() 慢得多
    res = f.readline()
    print(res)

    # readlines() 一次读取整个文件,将内容分析成一个行的列表,可以由for...in...处理
    res = f.readlines()
    print(res)
  • seek()移动光标至指定位置
  • read()读取整个文件,将文件内容放到一个字符串变量中,文件大于可用内存时不适用
  • readline()每次只读取一行,通常比readlines()慢得多
  • readlines() 一次读取整个文件,将内容分析成一个行的列表,可以由for...in...处理
  • 注意:这三种方法是把每行末尾的'\n'也读进来了,它并不会默认的把'\n'去掉,需要我们手动去掉(.strip('\n')

 

2. 写入文件

with open('test_json_dumps.txt', mode='r', encoding='utf-8') as f:
    # seek()移动光标至指定位置
    f.seek(0)

    # write()将字符串写入到文件中
    f.write('Content')

    # 针对列表的操作,接受一个字符串列表作为参数,将字符串列表写入到文件,换行符不会自动加入,需要显式加入换行符
    f.writelines('Content')
  • write()将字符串写入到文件中
  • writelines()针对列表的操作,接受一个字符串列表作为参数,将字符串列表写入到文件,换行符不会自动加入,需要显式加入换行符

 

3. 文件打开模式

  • 'r':打开只读文件,该文件必须存在
  • 'w':打开只写文件,若文件存在则文件长度清为0,即该文件内容会消失。若文件不存在则建立该文件
  • 'a':以附加的方式打开只写文件。若文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾,即文件原先的内容会被保留
  • 'r+' : r+w(可读可写,文件若不存在就报错(IOError))
  • 'w+' : w+r(可读可写,若文件存在则文件长度清为零,即该文件内容会消失。若文件不存在则建立该文件)
  • 'a+' : a+r(可追加可写,若文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾后,即文件原先的内容会被保留)
posted @ 2019-05-24 17:41  magicmmmm  阅读(1461)  评论(0编辑  收藏  举报