文件读写

2021-06-02 09:34:18 浏览数 (1)

打开/关闭文件

代码语言:javascript复制
open(file_path, mode, buffering, encoding, error, newline, closefd, opener)

打开文件

代码语言:javascript复制
f = open('./file.text', 'r ', encoding='utf=8')
# 关闭文件
f.close()

打开模式

  • t 文本模式(默认)
  • x 新建并以写模式打开文件, 如果文件存在将报错
  • b 二进制模式
    • 可读可写
  • r 读取
  • w 写入
  • a 追加

模式可组合, r , rb, w , wb, a , ab 等

读取

代码语言:javascript复制
f = open('./file.text', 'r', encoding='utf-8')

一次读取全部数据

代码语言:javascript复制
content = f.read()

逐行读取

代码语言:javascript复制
def readline_1():
  for line in open('file.text', 'r')
    print(line)


def readline_2():
  f = open('file.text', 'r')
  for i in f.readlines():
    print(i)


def readline_3():
  f = open('file.text', 'r')
  line = f.readline()
  while line:
   print(line)
   line = f.readline()

写入

代码语言:javascript复制
f = open('file.text', 'w')

将覆盖原内容行

代码语言:javascript复制
f.write('''


  line 1


  line 2


  line 3


''')

多行覆盖写入

代码语言:javascript复制
content = [ 'line 1', 'n', 'line 2' ]
f.writelines(content)

追加

代码语言:javascript复制
f = open('file.text', 'a ')
f.write('new line')

with 自动关闭文件

代码语言:javascript复制
with open('file.text', 'r') as f:
  print(f.read()) # 执行结束后,文件将被自动关闭

0 人点赞