You need to enable JavaScript to run this app. 如何在Python中将字符串格式的数组转换为可直接索引的普通列表
优惠活动
大模型
产品
解决方案
定价
更多

如何在Python中将字符串格式的数组转换为可直接索引的普通列表

Python字符串格式嵌套结构转原生列表的方法

你需要将符合Python字面值格式的字符串转为原生列表,有两种常用实现方案:

方案1:使用ast.literal_eval(首选,安全)

这是Python官方推荐的安全解析字面值的方案,仅会解析列表、元组、字典、数字、字符串这类合法Python字面值,不会执行任意代码,无安全风险:

  • 实现代码:
import ast

# 你的原始字符串
a_str = "[(1,2),(2,3),(3,4)]"
# 转换为原生列表
a = ast.literal_eval(a_str)

# 验证效果
print(a)  # 输出 [(1, 2), (2, 3), (3, 4)]
print(a[1])  # 输出 (2, 3),可直接通过索引访问
print(type(a[0]))  # 输出 <class 'tuple'>,元组结构保留

方案2:使用eval(不推荐,仅作参考)

如果你能100%确保输入字符串无恶意代码,可以直接用eval转换,但生产环境禁止使用该方案,一旦输入包含恶意代码会直接执行,造成安全问题:

  • 实现代码:
a_str = "[(1,2),(2,3),(3,4)]"
a = eval(a_str)

内容的提问来源于stack exchange,提问作者Chetan Warke

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.21 07:06:00