创建文本流的最简单方法是使用 open(),可以选择指定编码:
f=open("myfile.txt","r",encoding="utf-8")
但是更为安全的方法是:
with open("myfile.txt","w",encoding="utf-8") as f:
f.write(str)
还可以设置open函数的mode:
mode 可以为 'r', 'w', 'x' 或 'a' 分别表示读取(默认模式)、写入、独占新建或添加。 如果以写入或添加模式('w'和‘a’)打开的文件如果不存在将自动新建;当以写入模式(“w”)打开时会先把文件先清空。 以新建模式打开时如果文件已存在则将引发 FileExistsError。 以新建模式打开文件也意味着要写入,因此该模式的行为与 'w' 类似。 在模式中附带 '+' 将允许同时读取和写入。
示例:
如果要往一个文件中连续写入内容,设置可以为:
(这是从子进程读取管道输出并写到log文件中的部分程序)
while subproc.returncode is None:
out = subproc.stdout.readline() #这个readline函数每次读取一行
if out:
# print(out)
with open(r"XXX\XXX\test_1.log", mode='a',encoding="UTF-8") as f:
<