如何连接两个文件的内容,使其成为第三个?

时间:2016-04-17 05:01:20

标签: function file python-3.x text concatenation

我正在尝试编写一个带有三个参数的函数:file1,file2和new_file,并将file1和file2的内容写入new_file。

例如,如果我有文件,txt1,txt2:

txt1包含“Hello world!”

txt2包含“你能听见我吗?”

...并调用函数

combine_files(file1, file2, new_file)

new_file应包含“Hello word!你能听见我吗?”

我的功能不应该返回任何内容。

我目前的代码看起来像这样,我相信它远非任何方式:

def combine_files(file1, file2, new_filename):
    file1 = "part1.txt"
    file2 = "part2.txt"
    new_filename = "result.txt"

    text1 = open(file1).read()
    text2 = open(file2).read()
    text3 = open(new_filenane, "a")
    text3.write(text1 + text2)

1 个答案:

答案 0 :(得分:1)

这是使用上下文管理器的简单方法:

def combine_files(file1, file2, new_filename):
    with open(new_filename, 'w') as new_file:
        for file in [file1, file2]:
            with open(file, 'r') as original_file:
                new_file.write(original_file.read())

上下文管理器使您不必跟踪打开的文件,并记住自己关闭它们。

A simple context manager tutorial.