一、打开文件
Python里面打开文件可以使用内置的open函数。
open函数的定义如下:
def open(file, mode='r', buffering=None, encoding=None, errors=None, newline=None, closefd=True): # known special case of open
常用参数介绍:
-
file:指定要打开的文件名
-
打开模式(mode):打开模式可以是一个字符串,用于指定读取、写入或追加等操作。常见的打开模式包括 "r"(读取模式)、"w"(写入模式)、"a"(追加模式)
-
编码(encoding,可选):用于指定文件的字符编码,仅在文本模式下使用,比如utf-8,gbk等
如果你想学习接口自动化测试,我这边给你推荐一套视频,这个视频可以说是B站播放全网第一的接口自动化测试教程,同时在线人数到达1000人,并且还有笔记可以领取及各路大神技术交流:798478386
【已更新】B站讲的最详细的Python接口自动化测试实战教程全集(实战最新版)_哔哩哔哩_bilibili【已更新】B站讲的最详细的Python接口自动化测试实战教程全集(实战最新版)共计200条视频,包括:1.【接口自动化】目前软件测试的市场行情以及测试人员能力标准。、2.【接口自动化】全面熟练Requests库以及底层方法调用逻辑、3.【接口自动化】接口自动化实战及正则和JsonPath提取器的应用等,UP主更多精彩视频,请关注UP账号。https://www.bilibili.com/video/BV17p4y1B77x/?spm_id_from=333.337&vd_source=488d25e59e6c5b111f7a1a1a16ecbe9a
其他的参数我暂时没怎么用过,先不进行过多介绍,以免文档写错了,对大家造成困扰。
下面来重点看下mode介绍,先看函数官方定义的文档中是怎么描述的:
========= ===============================================================
Character Meaning
--------- ---------------------------------------------------------------
'r' open for reading (default)
'w' open for writing, truncating the file first
'x' create a new file and open it for writing
'a' open for writing, appending to the end of the file if it exists
'b' binary mode
't' text mode (default)
'+' open a disk file for updating (reading and writing)
========= ===============================================================
英文看不懂的话 ,我再来写一下自己的理解:
========= ===============================================================
Character Meaning
--------- ---------------------------------------------------------------
'r' 读取模式,也是默认的选项
'w' 写入模式,首先清空文件再写入
'x' 创建新文件并打开进行写入,如果文件已存在时会报错:FileExistsError: [Errno 17] File exists
'a' 追加模式,如果文件存在则在文件末尾追加
'b' 二进制模式
't' 文本模式 (default)
'+' 表示以更新模式打开文件。这种模式允许对文件进行读取和写入操作,即同时支持读取和写入
========= ===============================================================
rwabt这几个字母怎么去记忆呢?可以根据对应的英文单词喔,分别是read、write、append、byte、text。
二、使用with语句操作文件
在Python中,打开文件后最好使用with语句来读取文件。with语句在结束时会自动关闭文件,无需显式调用close()方法。with语句提供了一种方便的方式来确保在文件使用完毕后自动关闭,以避免资源泄漏和错误。当with块结束时,文件将自动关闭,即使在处理文件期间发生异常或错误,也会正确地关闭文件。
with open('myfile.txt', 'r',encoding="utf-8") as file:
content = file.read()
# 在这里可以对文件内容进行处理
print(content)
# 文件会在with语句结束后自动关闭,无需手动调用file.close()
逐行读取文件:
with open('myfile.txt', 'r',encoding="utf-8" ) as file:
for line in file:
# 对每一行进行处理
print(line)
按行写入文件:
lines = ['Line 1', 'Line 2', 'Line 3']
with open('myfile.txt', 'w') as file:
for line in lines:
file.write(line + '\n')