首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >将列表的字符串表示形式转换为实际的列表对象

将列表的字符串表示形式转换为实际的列表对象
EN

Stack Overflow用户
提问于 2012-05-28 01:26:46
回答 2查看 49.7K关注 0票数 86

我有一个看起来与列表相同的字符串,假设:

代码语言:javascript
复制
fruits = "['apple', 'orange', 'banana']"

如何将其转换为列表对象?

EN

回答 2

Stack Overflow用户

发布于 2012-05-28 01:31:05

eval()的一个简单调用就可以做到:

代码语言:javascript
复制
fruits = eval("['apple', 'orange', 'banana']")
fruits
> ['apple', 'orange', 'banana']

或者,正如本article中所解释的,可以更安全地完成相同的操作(意思是:不会有意外副作用或恶意代码注入的风险),如下所示:

代码语言:javascript
复制
fruits = eval("['apple', 'orange', 'banana']", {'__builtins__':None}, {})

这种解决方案的优点是不依赖额外的模块。

票数 32
EN

Stack Overflow用户

发布于 2012-05-28 01:27:16

我认为这就是ast.literal_eval的用途。

( http://docs.python.org/library/ast.html#ast.literal_eval )

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10775894

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档