import argparse
def alternate_line_swap(input_file_path, output_file_path):
# 打开输入文件并读取内容
with open(input_file_path, 'r') as input_file:
lines = input_file.readlines()
# 交换交替行
for i in range(1, len(lines) - 1, 2):
lines[i], lines[i + 1] = lines[i + 1], lines[i]
# 将处理后的内容写入输出文件
with open(output_file_path, 'w') as output_file:
output_file.writelines(lines)
if __name__ == '__main__':
parser = argparse.ArgumentParser(description='Swap every alternate line of a file')
parser.add_argument('input_file_path', type=str, help='Path to input file')
parser.add_argument('output_file_path', type=str, help='Path to output file')
args = parser.parse_args()
alternate_line_swap(args.input_file_path, args.output_file_path)
这个程序使用 argparse 模块处理命令行参数,并使用 with 语句打开和操作输入和输出文件。逻辑是打开输入文件并读取所有行,然后交换交替行,最后将处理后的内容写入输出文件。可以在命令行中运行该程序:
$ python swap_alternate_lines.py input.txt output.txt
其中 input.txt 是要处理的文件,output.txt 是生成的新文件。