我在Python中有一个函数,它接受一个“读者”(我希望这是正确的术语)。基本上,该函数应该能够使用文件、sys.stdin 等。然后它必须读取所有行并将它们存储在字符串中。
目前我的函数调用如下所示:
read_data (sys.stdin, sys.stdout)
read_data ("file.txt", "fileout.txt")
函数本身如下所示:
def read_data (reader, s) :
str = ""
str = r.readline()
line = str
while line != "" and line != None and line != '\n':
line = r.readline()
str = str + line
当我运行代码并将输入粘贴到控制台进行测试时,它实际上能够读取包括最后一行在内的所有行,但之后它会卡在“line = readline()”中。我不确定我做错了什么,任何帮助将不胜感激。谢谢您
最佳答案
读取文件前需要先打开,例如:
f = open(reader, "r")
text = f.readline()
^ 另外,尽量不要使用“str”等保留关键字
关于python - 将python中的reader输入读取到字符串中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21729795/