假设有两个文本文件file1.txt和file2.txt,编写程序merge.py,把两个文本文件中的内容合并到新文件result.txt中,要求文件file1.txt和file2.txt中的行在result.txt中交替出现。也就是说,result.txt文件中的奇数行来自file1.txt,而偶数行来自file2.txt。如果俩个文件行数不一样,那么处理完行数较少的文件之后,把另一个文件中剩余的所有行直接追加到result.txt中。
时间: 2024-01-21 08:18:59 浏览: 84
Python文件操作之合并文本文件内容示例代码
5星 · 资源好评率100%
可以使用Python的文件读写操作来实现这个功能。
代码如下:
```python
with open('file1.txt', 'r') as f1, open('file2.txt', 'r') as f2, open('result.txt', 'w') as f3:
lines1 = f1.readlines()
lines2 = f2.readlines()
len1 = len(lines1)
len2 = len(lines2)
for i in range(max(len1, len2)):
if i < len1:
f3.write(lines1[i])
if i < len2:
f3.write(lines2[i])
```
首先,使用`with open()`打开三个文件,分别为file1.txt、file2.txt和result.txt。其中,file1.txt和file2.txt使用'r'模式打开,表示只读。result.txt使用'w'模式打开,表示写入内容到文件中,如果文件不存在则创建新文件,如果文件已存在则清空文件内容并覆盖。
接着,使用`readlines()`方法读取file1.txt和file2.txt中的所有行,并存储到lines1和lines2变量中。
然后,获取lines1和lines2的长度,分别为len1和len2。
最后,使用for循环来遍历max(len1, len2)次,即遍历两个文件中的行数较大值次数。在循环中,使用if语句判断当前行数i是否小于len1和len2,如果是,则分别将lines1和lines2中的当前行写入到result.txt中。如果行数不足,则只写入存在的行数,如果一方文件遍历完了,另一方文件剩余的行则全部写入到result.txt中。
这样,就能实现将两个文件的内容交替合并到新文件中的功能。
阅读全文