打开输入和输出文件时顺序重要吗?

2024-04-19 19:48:46 发布

您现在位置:Python中文网/ 问答频道 /正文

写/读文件的顺序正确吗?我通常是这样做的:

  1. 打开“写入”文件
  2. 打开“读取”文件
  3. 遍历“read”
  4. 写入“写入”文件
with open(path + 'write_file.txt', 'wb') as txtout:
    with open(path + 'read_file.txt', 'rb') as txtin:
        for line in txtin:
            txtout.writelines(line)

有什么理由先打开输入文件吗?而不是先打开输出文件?你知道吗


Tags: 文件pathtxtread顺序aswithline
3条回答

1)先打开输入文件,然后打开输出文件。这样,如果输入文件不存在,您就可以报告该错误,而不必首先创建(现在没有用的)输出文件。你知道吗

2)迭代输入文件(正如您所做的),而不是调用file.read()file.readlines()。调用其中一个函数可以使用基本上无限量的内存。你知道吗

3)在给定的特定情况下,使用^{}^{}。你知道吗

您可以执行以下任一操作:

with open("file_write", 'w') as f1, open("file_read") as f2:
      # bla bla bla

或者这个:

with open("file_read") as f1, open("file_write", 'w') as f2:

没什么区别。当然,如果你的输入文件确实存在的话。如果文件不存在,则使用“w”标志创建/覆盖该文件。但是read操作的文件对象将返回“False”,即不存在。事实上,只要您想访问不存在的读取文件,它就会生成错误。你知道吗

我建议你先看一下文件。如果文件不存在并且写入操作无法启动,则会出现错误。你知道吗

相关问题 更多 >