【问题标题】:Convert string of list into list of int将列表字符串转换为 int 列表
【发布时间】:2013-03-12 02:56:43
【问题描述】:

如何将一串整数列表转换为整数列表?

示例输入:(类型:字符串)

"[156, 100, 713]"

转换示例:(类型:int 列表)

[156, 100, 713]

【问题讨论】:

  • 去掉字符串的第一个和最后一个字符然后拆分','我觉得效率不高,所以在这里问。

标签: python list


【解决方案1】:

试试这个:

import ast
res = ast.literal_eval('[156, 100, 713]')

Read more about ast.literal_eval in python docs.

【讨论】:

    【解决方案2】:

    使用ast.literal_eval 就可以了。在这里你没有常规eval的所有安全问题,你也不需要担心确保你的字符串格式正确等等。当然,如果你真的想自己解析这个东西,你可以这样做它有一个非常简单的列表理解:

    s = "[156, 100, 713]"
    print [ int(x) for x in s.translate(None,'[]').split(',') ]
    

    【讨论】:

      【解决方案3】:
      >>> import json
      >>> a = "[156, 100, 713]"
      >>> json.loads(a)
      [156, 100, 713]
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2016-04-14
        • 2018-08-04
        • 2014-05-23
        • 1970-01-01
        • 1970-01-01
        • 2018-01-08
        相关资源
        最近更新 更多