【发布时间】:2019-03-27 06:09:36
【问题描述】:
我正在尝试将 .txt 文件转换为常规 Python 列表。我以前做过,但以前的情况涉及手动构建的文件。我目前正在尝试处理由另一个 Python 脚本组成的 .txt 文件,该脚本将列表写入所述 .txt 文件。我不确定为什么 Python 认为这些格式不同
这就是我的意思:
第一个 .txt 看起来像:
(我们称之为x.txt)
I like dogs
Go home
This is the greatest Ice Cream ever
现在如果我这样做:
f = open('x.txt', encoding = "utf8")
z = f.readlines()
print(z)
我明白了
['I like dogs','Go home','This is the greatest Ice Cream ever']
这正是我想要的^
我当前的 .txt 文件如下所示:
(我们称之为 y.txt)
['I like dogs','Go home','This is the greatest Ice Cream ever']
现在如果我这样做:
f = open('y.txt', encoding = "utf8")
z = f.readlines()
print(z)
我得到一个奇怪的输出,如下所示:
['[\'I like dogs. \', \'Go home\', \'This is the greatest Ice Cream
ever\',]]
我认为双括号只存在于 Pandas 中?我在哪里错了?如何获得常规列表格式输出。
注意:为了提供一些上下文,我正在尝试将此列表提供给一些文本清理脚本。当我尝试将第二个输出输入其中时,我没有收到错误,但它会将字符串列表转换为列表中的一个长字符串,例如:['IlikedogsGohomeThisisthegreatestIceCreamever']
【问题讨论】:
-
当您在文本文件中保存
['I like dogs','Go home','This is the greatest Ice Cream ever']时,它们将以字符串格式保存,当您执行readlines()这些字符串列表转换为单字符串时,它们将再次保存将在列表中。 -
@pistol2myhead 我认为这就是问题所在。你知道解决办法吗?
标签: python string list import text-files