• Python | 将字符串转换为列表的7种方法


    在本文中,我们将尝试将给定的字符串转换为列表,其中根据用户的选择,遇到空格或任何其他特殊字符。为此,我们在string中使用split()方法。

    例如:

    输入: “Geeks for Geeks”
    输出: [‘Geeks’, ‘for’, ‘Geeks’]

    1. 使用list()方法

    列表是Python中内置的数据类型。它通常用于存储项目或项目集合,我们可以用它将字符串转换为列表。

    s = "abcd"
    x = list(s)
    print(x)
    
    • 1
    • 2
    • 3

    输出

    ['a', 'b', 'c', 'd']
    
    • 1

    2. 使用列表解析

    s="abcd"
    x=[i for i in s]
    print(x)
    
    • 1
    • 2
    • 3

    输出

    ['a', 'b', 'c', 'd']
    
    • 1

    3. 使用split()方法

    split方法用于拆分字符串并将其存储在列表中。内置方法返回字符串中的单词列表,使用“分隔符”作为分隔符字符串。如果未指定分隔符或分隔符为None,则应用不同的拆分算法:连续空格的运行被视为单个分隔符,并且如果字符串具有前导或尾随空格,则结果在开始或结束处将不包含空字符串。

    def Convert(string):
        li = list(string.split(" "))
        return li
     
     
    # Driver code
    str1 = "Geeks for Geeks"
    print(Convert(str1))
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    输出

    ['Geeks', 'for', 'Geeks']
    
    • 1
    def Convert(string):
        li = list(string.split("-"))
        return li
     
     
    # Driver code
    str1 = "Geeks-for-Geeks"
    print(Convert(str1))
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    输出

    ['Geeks', 'for', 'Geeks']
    
    • 1

    4. 使用字符串切片

    def Convert(string):
        list1 = []
        list1[:0] = string
        return list1
     
     
    # Driver code
    str1 = "ABCD"
    print(Convert(str1))
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    输出

    ['A', 'B', 'C', 'D']
    
    • 1

    5. 使用enumerate方法

    s="abcd"
    x=[i for a,i in enumerate(s) ]
    print(x)
    
    • 1
    • 2
    • 3

    输出

    ['a', 'b', 'c', 'd']
    
    • 1

    6. 使用JSON模块

    import json
     
    stringA = '["geeks", 2,"for", 4, "geeks",3]'
     
    # Type check
     
    res = json.loads(stringA)
    # Result
    print("The converted list : \n",res)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    输出

    The converted list : 
     ['geeks', 2, 'for', 4, 'geeks', 3]
    
    • 1
    • 2

    7. 使用ast.literal

    在Python中,有个ast模块,它有一个litera_eval方法,我们也可以通过它来进行转换。

    import ast
     
    # initializing string representation of a list
    ini_list = '["geeks", 2,"for", 4, "geeks",3]'
     
     
    # Converting string to list
    res = ast.literal_eval(ini_list)
     
    # printing final result and its type
    print(res)
    print(type(res))
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    输出

    ['geeks', 2, 'for', 4, 'geeks', 3]
    <class 'list'>
    
    • 1
    • 2
  • 相关阅读:
    echarts图表 柱状图柱体颜色渐变
    想让你的工作轻松高效吗?揭秘Java + React导出Excel/PDF的绝妙技巧!
    计算机网络产生的基础是什么
    UE4 C++ 类的4种引用类型,和异步加载资产
    LearnOpenGL(四)之纹理
    【JAVA UI】HarmonyOS使用ZSONObject对象转化json数据
    数据导入hudi报错,错将字段写到hdfs路径上
    用sublime测试正则表达式
    SRM管理系统是什么?能为企业带来什么效益
    技术人员转岗产品经理,有优势吗?
  • 原文地址:https://blog.csdn.net/qq_42034590/article/details/131979077