当前位置: 首页 > 面试题库 >

如何将已经看起来像列表的字符串转换为列表?

郭单鹗
2023-03-14
问题内容

我有一个已经看起来像列表的字符串:

activeStateString = "['11', '20', '0']"

我想将此定义为Python中的列表。我知道我可以开始过滤并将其分解并重建一个新列表,但是随后我必须进入循环等。Python中是否有一种方法可以立即将该字符串从“字符串”提升为列表?因此,一旦转换:

activeStateString -> activeStateList

我得到:

11

对于:

print activeStateList[0]

谢谢

(Python 2.6)


问题答案:

使用ast.literal_eval()解释包含了Python文字字符串:

>>> import ast
>>> ast.literal_eval("['11', '20', '0']")
['11', '20', '0']

这样比较安全,因为使用eval()它将拒绝解释任何 文字值的东西:

>>> eval("__import__('sys').version")
'2.7.5 (default, Oct 28 2013, 20:45:48) \n[GCC 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.11.00)]'
>>> ast.literal_eval("__import__('sys').version")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/mj/Development/Library/buildout.python/parts/opt/lib/python2.7/ast.py", line 80, in literal_eval
    return _convert(node_or_string)
  File "/Users/mj/Development/Library/buildout.python/parts/opt/lib/python2.7/ast.py", line 79, in _convert
    raise ValueError('malformed string')
ValueError: malformed string


 类似资料:
  • 问题内容: 如何使用Python将列表转换为字符串? 问题答案: 通过使用 或者,如果列表是整数,则在连接元素之前将其转换。

  • 我有字符串列表 我需要将该列表转换为字符串,如下所示: 我想获取的字符串是: 如果 那么我只需要 如果,那么我需要。 有没有可能以一种灵活的方式做到那一点,并且避免编写多个? UPD:我在

  • 问题内容: 我在pandas数据框中的某个列的类型有问题。基本上,该列以字符串形式保存在csv文件中,我想将其用作元组,以便能够将其转换为数字列表。接下来是一个非常简单的csv: 如果使用函数“ read_csv”加载它,则会得到字符串列表。我试图转换为列表,但是得到了字符串的列表版本: 返回: 关于如何做到这一点的任何想法吗? 谢谢。 问题答案: 您可以使用,这将给您一个元组: 如果确实需要列表

  • 问题内容: 我有一个pandas数据框。列之一包含一个列表。我希望该列为单个字符串。 例如,我的列表[‘one’,’two’,‘3’]应该简单地是‘1、2、3’ 给我[‘一个,两个,三个],[‘四个’,’五个’,’六个’],其中第二个列表来自下一行。不用说,对于数百万行,这种跨行连接不仅是不正确的,而且还会杀死我的内存。 问题答案: 在转换列表之前,您当然不应该转换为字符串。尝试: 另请注意,会将

  • 问题内容: 我有一个列表格式,如下所示: 如何转换为包含如下所示元素的列表: 问题答案: 用途: 或使用将其视为JSON : 以Python文字作为输入(因此Python源代码中的文本将为您提供一个值),以JSON输入。 演示: 只有当您的输入字符串中包含多个整数列表时,两者之间的区别才会发挥作用。JSON字符串包含unicode,在Python 2上无法正确解释,并且JSON类型只是支持的一部分

  • JavaScript具有 Java有这样的东西吗?我知道我可以用StringBuilder自己来添油加醋: ...但是如果类似的东西已经是JDK的一部分,那么这样做就没有意义了。

  • 这个问题的范围是JSON处理的JavaAPI(JSR 353)。 给定一个元素为JsonString的JsonArray,我如何轻松地将其转换为

  • 问题内容: 我有一个清单 我想将其转换为字典 我该怎么做? 问题答案: 采用: 返回: 如果需要整数,请在以下位置更改分配: 这将给出: