【问题标题】:How to convert string to list [duplicate]如何将字符串转换为列表[重复]
【发布时间】:2019-07-02 02:02:14
【问题描述】:

有没有可能,如果有,我怎么能做这样的事情。想象一下,你运行这段代码并输入 ["Hello","Sup"]

list = input()
something = list[0]

【问题讨论】:

标签: python python-3.x


【解决方案1】:

如果用户输入的是空格分隔的一串单词,可以调用do

something = str(list).split(" ")

如果用户输入的不是字符串,这将遇到错误...

【讨论】:

    【解决方案2】:

    好吧,你可以删除 "["s 和 "]"s 然后 split 它,这将返回一个实际的列表。

    list.replace("[", "").replace("]", "").split()

    【讨论】:

      【解决方案3】:

      使用 Python 非常简单。

      只需使用ast 或json 即可。

      import ast
      
      string_to_be_converted = '[ "I", "am", "a", "string"]'
      
      mylist = ast.literal_eval(string_to_be_converted)
      

      这里,type(mylist) 向我们展示了mylist 是list,而不是string。

      但是,我建议使用json 进行此类操作。它不仅更安全,而且速度更快。

      import json
      
      string_to_be_converted = '[ "I", "am", "a", "string"]'
      
      mylist = json.loads(string_to_be_converted)
      

      速度对比:

      Ast:

      In [1]: %timeit ast.literal_eval(string_to_be_converted)
      13.6 µs per loop
      

      Json:

      In [2]: %timeit json.loads(string_to_be_converted)
      2.99 µs per loop
      

      【讨论】:

        猜你喜欢
        • 2011-08-02
        • 2018-10-12
        • 2011-05-27
        • 2011-02-23
        • 2017-06-28
        • 1970-01-01
        • 2018-01-27
        • 2020-10-30
        • 1970-01-01
        相关资源
        最近更新 更多