我使用以下代码段来读取在 python 中的文件

with open ("data.txt", "r") as myfile:
    data=myfile.readlines()

输入文件

LLKKKKKKKKMMMMMMMMNNNNNNNNNNNNN
GGGGGGGGGHHHHHHHHHHHHHHHHHHHHEEEEEEEE

并获得打印数据时

['LLKKKKKKKKMMMMMMMMNNNNNNNNNNNNN
', 'GGGGGGGGGHHHHHHHHHHHHHHHHHHHHEEEEEEEE']

正如我看到的数据是以列表形式。如何使字符串。并且还如何删除"","[",和"]"从它的字符?

2011-12-03 16:47:54
问题评论:

回答:

您可以使用︰

with open('data.txt', 'r') as myfile:
    data=myfile.read().replace('
', '')

只需编写中是否有不足之处open("data.txt").read().replace(' ','')相反?

是的您的版本没有显式关闭的文件,然后将被推迟到垃圾回收器运行或终止程序。With 语句通常封装某些安装/拆卸打开/关闭操作。

感谢您的说明。所以,似乎我的版本可能会小脚本中的确定,但 OTOH 它应最好完全避免以不使它成为习惯。

如果您需要提前终止或遇到异常,@tuomassalo 是在测试/调试过程中,因为它巨大 PITA 不清理打开文件句柄。

否, rstrip(' ')将只从最后一行删除换行符时, replace(' ','')删除它无处不在 (实质上使整个文件的一行)

使用 read (),不 readline ()

data=myfile.read()

也许是,但它并不想 OP 为去掉换行符。我仍然喜欢它,但。

如果返回的一个字符串,去除换行符没有任何意义-OP 应选择一个字符串或字符串列表中去除。

with open("data.txt") as myfile:
    data="".join(line.rstrip() for line in myfile)

join () 将加入列表的字符串,并不带任何参数的 rstrip() 将修剪空白,包括换行符,从字符串的末尾。

简单的方法︰

file = open('newfile.txt', 'r')
print file.read()

只是尝试在一条线。

str = open('very_Important.txt', 'r').read()
请输入您的翻译

How do I read a text file into a string variable in Python

确认取消