当前位置:   article > 正文

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
本文内容由网友自发贡献,转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/175093
推荐阅读
相关标签
  

闽ICP备14008679号