我有一个文本文件,看起来像:
ABC
DEF
我怎么能把文件读入一个单行字符串没有换行符,在这种情况下创建一个字符串'ABCDEF'?
有关将文件读入行列表,但从每行中删除末尾换行字符的操作,请参见如何读取不带换行符的文件?。
我有一个文本文件,看起来像:
ABC
DEF
我怎么能把文件读入一个单行字符串没有换行符,在这种情况下创建一个字符串'ABCDEF'?
有关将文件读入行列表,但从每行中删除末尾换行字符的操作,请参见如何读取不带换行符的文件?。
当前回答
with open('data.txt', 'r') as file:
data = [line.strip('\n') for line in file.readlines()]
data = ''.join(data)
其他回答
你试过这个吗?
x = "yourfilename.txt"
y = open(x, 'r').read()
print(y)
with open('data.txt', 'r') as file:
data = [line.strip('\n') for line in file.readlines()]
data = ''.join(data)
您还可以剥离每一行并连接成最终字符串。
myfile = open("data.txt","r")
data = ""
lines = myfile.readlines()
for line in lines:
data = data + line.strip();
这也可以解决问题。
from pathlib import Path
line_lst = Path("to/the/file.txt").read_text().splitlines()
是获取文件所有行的最佳方法,'\n'已经被splitlines()剥离(它可以智能识别win/mac/unix行类型)。
但如果你想剥离每一行:
line_lst = [line.strip() for line in txt = Path("to/the/file.txt").read_text().splitlines()]
Strip()只是一个有用的示例,但是您可以按照自己的意愿处理您的行。
最后,你只想要连接的文本?
txt = ''.join(Path("to/the/file.txt").read_text().splitlines())
这可以使用read()方法来完成:
text_as_string = open('Your_Text_File.txt', 'r').read()
或者因为默认模式本身是'r'(读),所以简单地使用,
text_as_string = open('Your_Text_File.txt').read()