如何通过Python在一个字符串中打开一堆.txt文件

时间:2018-06-13 09:24:13

标签: python file text directory

我很清楚如何打开一个文件,使用open()函数非常简单:

with open('number.txt', 'rb') as myfile:
    data=myfile.read()

但是,如果我想打开5个.txt文件并在Python中将它们视为字符串,那将会是我的行为?我应该以某种方式使用os.listdir()种可能性吗?

2 个答案:

答案 0 :(得分:1)

这是一种灵活/可重复使用的方法,可以完全满足您的需求:

def read_files(files):
    for filename in files:
        with open(filename, 'rb') as file:
            yield file.read()

def read_files_as_string(files, separator='\n'):
    files_content = list(read_files(files=files))
    return separator.join(files_content)

# build your files list as you need
files = ['f1.txt', 'f2.txt', 'f3.txt']
files_content_str = read_files_as_string(files)
print(files_content_str)

答案 1 :(得分:0)

看起来你需要。

import os
path = "your_path"
for filename in os.listdir(path):
    if filename.endswith(".txt"):
        with open(os.path.join(path, filename), 'rb') as myfile:
            data=myfile.read()