如何将已打开的文件转换为字符串?

时间:2017-11-13 20:29:17

标签: python csv

给定一个打开的文件,将内容作为字符串返回。(这假设autotester使用随机文件测试函数,因此变量应该对多个相同类型的文件打开)

def read_file(myfile):
'''(file) -> str
Read the open file and return as a string.'''

4 个答案:

答案 0 :(得分:1)

def read_file(myfile):
    return myfile.read()

答案 1 :(得分:1)

content = myfile.read()

或者逐行阅读并将其放入列表中:

content_list = myfile.readlines()

然后您可以使用:

content_list = [x.strip() for x in content_list]

删除\ n个字符。

答案 2 :(得分:0)

打开文件后(我建议使用with语句,例如with open(filename.txt, "r") as file,使用fileString = file.read()fileString将是内容

答案 3 :(得分:0)

要处理较大的文件,最好以固定大小的块读取。例如,如果您尝试打开图像,并且不使用缓冲读取,则会得到MemoryError

def read_file(filename):
    BUFFER_SIZE = 65536
    contents = []
    with open(filename, "r") as f:
        while True:
            chunk = filename.read(BUFFER_SIZE)
            if not chunk:
                break
            contents.append(chunk)
    return "".join(contents)