本文主要介绍Python中,读取写入txt文本文件的方法,和简单记录日志功能的实现,以及相关的示例代码。

1、读取txt文本

Python中常用读取文件函数有read()readline()readlines()

1)read()

read()一次性读取全部txt文本内容,一次性读取文本中全部的内容,以字符串的形式返回,具体如下,

with open("cjavapy.txt", "r") as f:  #打开文件
    data = f.read()  #读取文件
    print(data)

2)readline()

readline()只读取文本第一行的内容,以字符串的形式返回,具体如下,

with open("cjavapy.txt", "r") as f:  #打开文件
    data = f.readline()  #读取文件
    print(data)

3)readlines()

readlines()读取文本所有内容,并且以列表形式返回,具体如下,

with open("cjavapy.txt", "r") as f:
    data = f.readlines()
    print(data)

注意:使用了with,则会自动关闭,而无论读取过程中是否发生问题都会自动调用close()。否则必须手动调用 f.close()关闭

2、写入txt文本

Python中常用写入文件都是write()函数,通过指定不同的模式实现不同的写入方式,具体如下,

with open("cjavapy.txt","w") as f:
    f.write("url = https://www.cjavapy.com")  #使用了with,则会自动关闭,不需要再写f.close()

常用文件读写模式:

读写模式

模式说明

r

读取文件,若文件不存在则会报错

w

写入文件,若文件不存在则会先创建再写入,

会覆盖原文件

a

写入文件,若文件不存在则会先创建再写入,

但不会覆盖原文件,而是追加在文件末尾

rb

与r类似,但是用于读二进制文件

wb

与w类似,但是用于写二进制文件

r+

可读、可写,文件不存在也会报错,

写操作时会覆盖

w+

可读,可写,文件不存在先创建,会覆盖

a+

  可读、可写,文件不存在先创建,

不会覆盖,追加在末尾

相关文档:

Python File文件处理 打开文件(open函数)

Python File文件处理 读取文件(read)

Python File文件处理 创建/写入文件(write)

Python File文件处理 删除文件(remove)

3、实现简单日志记录

一般Python中都是通过logging模块实现程序日志记录,当前是通过简单文件读写实现日志记录,更好了解文件的的读写,具体如下,

from datetime import datetime

def writeLog(log):
    with open("./log.txt", "a") as f:
        f.write("{0} : {1}\n".format(datetime.now().strftime('%Y-%m-%d %H:%M:%S') , log))
writeLog("开始运行")

writeLog("运行结束")

with open("./log.txt", "r") as f:
    data = f.readlines()
    print(data)

推荐文档