You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将文本文件中的数组字符串转换为可对比的Python列表?

读取文本文件中数组字符串转换为标准列表的解决方法

方法1:使用ast.literal_eval()(推荐)

这是最安全可靠的方案,它专门用于解析Python字面量,不会执行任意代码,适配绝大多数合法的列表格式。

示例代码:

import ast

# 读取文件内容
with open('your_array_file.txt', 'r') as f:
    file_content = f.read().strip()

# 转换为标准列表
target_list = ast.literal_eval(file_content)
print(target_list)  # 输出: ['Name1', 'Name2', 'Name3', ..., 'NameN']

方法2:使用json.loads()

JSON格式要求字符串用双引号,因此需要先将文本中的单引号替换为双引号,再用JSON模块解析。

示例代码:

import json

with open('your_array_file.txt', 'r') as f:
    file_content = f.read().strip()

# 替换单引号为双引号,适配JSON格式要求
json_content = file_content.replace("'", '"')
target_list = json.loads(json_content)
print(target_list)

注意:如果数组元素本身包含双引号,该方法会失效,此时优先选择方法1。

方法3:手动字符串处理(不推荐)

若不想引入外部模块,可手动截取、分割字符串,但这种方式容错性极低,仅适用于元素无特殊字符(逗号、空格等)的简单场景。

示例代码:

with open('your_array_file.txt', 'r') as f:
    file_content = f.read().strip()

# 去除首尾的[],分割元素后清理引号和空格
raw_items = file_content[1:-1].split(',')
target_list = [item.strip().strip("'") for item in raw_items]
print(target_list)

内容的提问来源于stack exchange,提问作者Ahmed Arafat

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 06:42:46