读取目录下txt 让不同txt 行数相等 超出的写入另外一txt
时间: 2023-08-27 08:07:08 浏览: 138
读取和写入.txt
您好!我可以为您解答有关读取目录下txt让不同txt行数相等和超出的写入另外一个txt的问题。
首先,您可以使用Python内置的os和os.path库来遍历指定目录下的所有txt文件。然后,使用Python的文件读/写功能来对这些文件进行读写。
以下是实现上述需求的一个示例代码:
```python
import os
# 定义要遍历的目录路径
dir_path = "path/to/dir/"
# 遍历目录下的所有txt文件
for filename in os.listdir(dir_path):
if filename.endswith(".txt"):
# 打开当前文件,获取文件行数
with open(dir_path + filename, "r") as file:
lines = file.readlines()
total_lines = len(lines)
# 打开待写入txt文件,获取该文件已有的行数
with open("path/to/output.txt", "a+") as output_file:
output_file.seek(0)
output_lines = output_file.readlines()
if not output_lines:
output_lines = []
output_lines_len = len(output_lines)
# 计算需要补足的行数
if total_lines < output_lines_len:
remaining_lines = output_lines_len - total_lines
lines.extend(["\n" for i in range(remaining_lines)])
elif total_lines > output_lines_len:
remaining_lines = total_lines - output_lines_len
output_lines.extend(["\n" for i in range(remaining_lines)])
with open("path/to/output.txt", "w") as output_file:
output_file.writelines(output_lines)
# 将当前txt文件的内容写入待写入txt文件
output_file.writelines(lines)
```
以上代码会遍历指定目录下的所有txt文件,获取每个文件的行数。然后,它会打开待写入的txt文件,计算出需要补足的行数,并将每个文件的内容写入该文件。如果待写入的txt文件行数少于当前文件的行数,则新增空行;如果待写入的txt文件行数多于当前文件的行数,则从末尾开始添加空行。
希望以上代码对您有所帮助。如果您需要进一步的帮助,请告诉我。
阅读全文