文章目录
- 打开txt文件
- 读取txt文件
- 写入txt文件
- 删除txt文件
打开txt文件
open(file, mode='r', buffering=None, encoding=None, errors=None, newline=None, closefd=True)
函数用来打开txt文件。
#方法1,这种方式使用后需要关闭文件
f = open("data.txt","r", encoding='utf8')
f.close()
#方法2,使用文件后自动关闭文件
with open('data.txt',"r", encoding='utf8') as f:
参数说明:
- file:文件路径(相对路径或绝对路径)
- mode:打开文件的模式,常用有:
r
、w
、a
、r+
、w+
、a+
r
:以读方式打开文件,可读取文件信息。w
:以写方式打开文件,可向文件写入信息。如文件存在,则清空该文件,再写入新内容。a
:以追加模式打开文件(即一打开文件,文件指针自动移到文件末尾),如果文件不存在则创建。r+
:以读写方式打开文件,可对文件进行读和写操作。w+
:消除文件内容,然后以读写方式打开文件。a+
:以读写方式打开文件,并把文件指针移到文件尾。
- buffering:设置缓冲
- encoding:常用编码:
utf8
、GBK
- errors:报错级别
- newline:区分换行符
- closefd:传入的file参数类型
读取txt文件
f.read(int count)
读出文件,如果有count,则读出count个字符,如果不设count则读取整个文件。返回的数据类型为str
。f.readline()
读出一行信息。返回的数据类型为str
。f.readlines()
读出所有行,也就是读出整个文件的信息。返回的数据类型为list
。
示例1:
file_path = "read.txt" # 文件位置,这里用的相对路径
with open(file_path, "r", encoding='utf8') as f: # 获取文件对象,
lines = f.readlines() # 使用readlines()读取文件所有行
for line in lines: # 循环读出的所有行
print(line, end='') # 输入每一行,并去掉原有的'/n',line.strip()也可以
示例2:将数字转为字符串列表
file_path = "../test.txt"
with open(file_path, "r", encoding='utf8') as f:
lines = f.readlines()
for line in lines:
# astr = "'" + line.replace(’\n’,’’) + "'," # 去掉/n 方式一
astr = "'" + line[:-1] + "'," # 去掉/n 方式二
print(astr)
写入txt文件
f.write(str)
把str字符串写入文件。f.writelines(list)
把list中的字符串一行一行地写入文件,是连续写入文件,没有换行。
示例1:
file_path = "write.txt"
data_list = ["不登高山,不知天之高也;", "不临深溪,不知地之厚也。"]
with open(file_path, "w", encoding='utf8') as f:
for line in data_list:
f.write(line + '\n')
删除txt文件
import os
os.remove(r"test.txt") # 对所有类型的文件有效