如何在 Python 中将字符串转换为列表
Azaz Farooq
2023年1月30日
-
在 Python 中使用
list()
函数将字符串转换为列表 -
在 Python 中使用
split()
方法将字符串转换为列表 -
在 Python 中使用
eval()
函数将字符串转换为列表 -
在 Python 中使用
ast
方法将字符串转换为列表
Python 列表是可变的;所以它的元素可以在程序执行过程中随时被覆盖、修改和删除。字符串是用单引号或双引号括起来的字符组合,它是不可变的。
在本文中,我们将演示在 Python 中把字符串转换为列表的不同方法。
在 Python 中使用 list()
函数将字符串转换为列表
list()
函数在 Python 中把字符串转换为一个列表。
让我们以下面的代码为例。
test_str = "Python"
list(test_str)
输出:
['P', 'y', 't', 'h', 'o', 'n']
list()
函数接收一个字符串作为参数,并将其转换为一个列表。字符串中的每个字符都成为列表中的单个元素。
在 Python 中使用 split()
方法将字符串转换为列表
让我们取一个以逗号分隔的字符串值。
string = "x,y,z"
现在,我们将字符串值分割成列表元素。
完整的示例代码如下。
string = "x,y,z"
output = string.split(",")
output
输出:
['x', 'y', 'z']
上面的例子将字符串在给定的定界符 ,
处分割成一个列表。如果没有给定定界符,则使用白色空间作为默认值。
在 Python 中使用 eval()
函数将字符串转换为列表
这个方法只有在字符串安全的时候才会将字符串转换为一个列表,这意味着 eval()
函数中的字符串被解析并确定为一个 Python 表达式。如果不能作为 Python 表达式进行评估,就会产生一个错误。它不是一个 pythonic 方法。我们可以使用 split()
或 ast
方法来代替。
让我们为这个方法取一个指定的字符串。
string = "['xxx','yyy','zzz']"
完整的示例代码如下。
string = "['xxx','yyy','zzz']"
output = eval(string)
output
输出:
['xxx', 'yyy', 'zzz']
在 Python 中使用 ast
方法将字符串转换为列表
这个方法将使用 ast
库(抽象语法树)。通过这个库,我们将使用 eval()
函数将一个字符串转换为一个列表。
完整的示例代码如下。
import ast
string = "['xxx','yyy','zzz']"
output = ast.literal_eval(string)
output
输出:
['xxx', 'yyy', 'zzz']
相关文章 - Python List
- 从 Python 列表中删除某元素的所有出现
- 在 Python 中将字典转换为列表
- 在 Python 中从列表中删除重复项
- 如何在 Python 中获取一个列表的平均值
- Python 列表方法 append 和 extend 之间有什么区别
- 如何在 Python 中将列表转换为字符串