![](/img/trans.png)
[英]How do you format text from a file when reading the file into a text box in tkinter?
[英]How do I maintain the format of a text file when reading a text file through Python?
我有一个.txt文件,其中有一个看起来像这样的项目列表:
BLAH
ONE
TWO
THREE
FOUR
我目前正在使用Python读取该.txt文件并打印出文本行。 我遇到的问题是,打印的行同时显示\\n
的换行符和逗号。 当我从.txt文件中打印数据时,它看起来像这样:
BLAH \n, ONE \n, TWO \n, THREE \n, FOUR
我尝试使用.replace("\\n,", "")
尝试至少摆脱不想要的字符,但这似乎不起作用。 如何通过Python命令从.txt文件中保持相同的格式?
根据要求,这是我的代码:
file = open("plstemp.txt", "r")
abc=str(file.readlines())
wow = abc.replace("[", "").replace("]", "").replace("'", "")
print(wow)
file.close()
我想要的输出如下:
BLAH
ONE
TWO
THREE
FOUR
令人怀疑的是,您正在使用readlines
,这将为您提供列表。 列表中的每个项目都是文件中的一行。 您无需完全替换'['。 您需要意识到这里实际上有一个列表。
因此,执行file.readlines()
,您将拥有:
['BLAH\n', 'ONE\n', 'TWO\n', 'THREE\n', 'FOUR\n']
如果您改用file.read()
并打印出结果:
BLAH
ONE
TWO
THREE
FOUR
请记住,您仍然有一个'\\ n',因为实际上您需要它在上面显示输出,因为'\\ n'实际上是一个特殊字符,表示“换行符”。
因此,只需重新编写代码即可(您无需指定“ r”,因为默认情况下为“ r”):
file = open("plstemp.txt")
abc=file.read()
file.close()
print(abc)
readlines
将文件的行作为列表返回,但是随后将str
函数应用于列表,该函数将列表转换为字符串; 这就是为什么您得到不需要的[
和]
。
如果您只想读取整个文件,则可以执行以下操作
f = open("plstemp.txt", "r")
wow = f.read()
f.close()
print(wow)
还要避免使用file
作为变量名,因为它是python的内置类型。
好的,现在可以看到您的代码了:)
readlines()
以及for
循环将返回一个列表。 您正在清单上使用str()
函数,但我认为这行不通。 我认为idjaw的答案是正确的。 您也可以尝试:
file = open("plstemp.txt", "r")
abc=file.readlines()
wow = ",".join(abc) #joining a list into a string by commas as a separator
print(wow)
file.close()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.