【Python基础】文本文件读写

Python中常用文件读写方法汇总。

一、打开文件模式

  打开文件模式列表:

模式 r r+ w w+ a a+
+ + + +
+ + + + +
创建 + + + +
覆盖 + +
指针在开始 + + + +
指针在结尾 + +

二、读取文本文件

  python常用的读取文件函数有三种read()、readline()、readlines()
py_test_txtfile.png

1. read() 一次性读全部内容

  read()会一次性读取文本中全部的内容,以字符串的形式返回结果

with open('test.txt', 'r', encoding='utf-8') as f:  # 打开文件
    data = f.read()  # 读取文件
    print(data)

2. readline() 读取第一行内容

  readline()只读取文本第一行的内容,以字符串的形式返回结果

with open('test.txt', 'r', encoding='utf-8') as f:  # 打开文件
    data = f.readline()
    print(data)

3. readlines() 列表

  readlines()会读取文本所有内容,并且以数列的格式返回结果,一般配合for in使用

with open('test.txt', 'r', encoding='utf-8') as f:  # 打开文件
    data = f.readlines()
    print(data)
# 输出:['你好,我是第一行\n', '你好,我是第二行\n', '你好,我是第三行\n', '你好,我是第四行\n', '你好,我是第五行']

  可见readlines会读到换行符,我们可以用如下方法去除:

with open('test.txt', 'r', encoding='utf-8') as f:  # 打开文件
    for line in f.readlines():
        line = line.strip('\n')  # 去掉列表中每一个元素的换行符
        print(line)

三、写入文本文件

  清空原来的内容,覆盖写入

with open('test.txt', 'w', encoding='utf-8') as f:  # 打开文件
    f.write('测试写入一行')  # 这句话自带文件关闭功能,不需要再写f.close()

  保留原来的内容,在末尾追加写入

with open('test.txt', 'a', encoding='utf-8') as f:  # 打开文件
    f.write('测试写入一行')  # 这句话自带文件关闭功能,不需要再写f.close()

  目录