gpt4 book ai didi

Python - 打开文件 - readline - 列表 - 转换为字符串

转载 作者:太空宇宙 更新时间:2023-11-03 15:10:34 24 4
gpt4 key购买 nike

问题/问题详情

我有一个文件 (blah.txt),其内容(列表)如下所示:

Key1 = ['A','B','C','D','E','F','G','H','I','J','K', 'L','M','N','O','P','Q','R','S','T','U','V','W','X ','Y','Z','']

在一个简单的 python 文件(称为 CAT.py)中,我执行以下命令:

infile = open('blah.txt', 'r')
Key1 = infile.readline()
infile.close()
Key1 = Key1.rstrip('\n')
print(Key1)

Key1 = ['A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z',' ']

print(''.join(Key1))

Key1 = ['A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z',' '] <---- THIS IS WHAT I DO NOT WANT

但是……

如果在一个单独的简单 python 文件(称为 DOG.py)中,我在列表上执行以下命令:

Key1 = ['A','B','C','D','E','F','G','H','I','J','K', 'L','M','N','O','P','Q','R','S','T','U','V','W','X ','Y','Z','']

打印(键1)

['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', ' ']

打印(''.join(Key1))

ABCDEFGHIJKLMNOPQRSTUVWXYZ <---- THIS IS WHAT I WANT

问题/问题

我最终想要的输出看起来像“ABCDEFGHIJKLMNOPQRSTUVWXYZ”,但对于我的生活,我无法弄清楚如何读取文件列表,然后将该列表转换为单个字符串。谁能告诉我我哪里出错了,并告诉我一些可以解决我的问题的代码?

最佳答案

在应用join 之前,您必须将string 转换为list

首先我们使用partition来获取=之后的部分。然后 ast.literal_eval 将从字符串中创建一个列表。

import ast
line = "Key1 = ['A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z',' ']"
data = line.partition('=')[2].strip()
elements = ast.literal_eval(data)
print(''.join(elements))

附加:您可以在打开文件的上下文中使用 with。如果您这样做,Python 将为您关闭该文件。

with open('blah.txt', 'r') as infile:
line = infile.readline()

正如 jamylak 指出的:如果您控制文件,请不要像这样存储数据。如您所见,这并不容易处理。您可以将数据存储和读取为 JSON。

关于Python - 打开文件 - readline - 列表 - 转换为字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27394879/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com