将字符串括起来的列表转换为Python中的列表

我们有时可能会获得包含字符串的数据,但是流中的数据结构是一个Python列表。在本文中,我们将把字符串括起来的列表转换为实际的Python列表,可以将其进一步用于数据操作。

与评估

我们知道eval函数将给我们提供作为参数提供给它的实际结果。因此,我们将给定的字符串提供给eval函数,并返回Python列表。

示例

stringA = "['Mon', 2,'Tue', 4, 'Wed',3]"
# Given string
print("Given string : \n",stringA)
# Type check
print(type(stringA))
# using eval
res = eval(stringA)
# Result
print("The converted list : \n",res)
# Type check
print(type(res))

输出结果

运行上面的代码给我们以下结果-

Given string :
['Mon', 2,'Tue', 4, 'Wed',3]

The converted list :
['Mon', 2, 'Tue', 4, 'Wed', 3]

使用ast.literal_eval

在这种方法中,我们采用估计值,并通过将字符串作为参数来使用literal_eval函数。它会返回Python列表。

示例

import ast
stringA = "['Mon', 2,'Tue', 4, 'Wed',3]"
# Given string
print("Given string : \n",stringA)
# Type check
print(type(stringA))
# using literal_eval
res = ast.literal_eval(stringA)
# Result
print("The converted list : \n",res)
# Type check
print(type(res))

输出结果

运行上面的代码给我们以下结果-

Given string :
['Mon', 2,'Tue', 4, 'Wed',3]

The converted list :
['Mon', 2, 'Tue', 4, 'Wed', 3]

使用json.loads

加载函数注入模块可以执行类似的转换,在该转换中,将评估字符串并生成实际的Python列表。

示例

import json
stringA = '["Mon", 2,"Tue", 4, "Wed",3]'
# Given string
print("Given string : \n",stringA)
# Type check
print(type(stringA))
# using loads
res = json.loads(stringA)
# Result
print("The converted list : \n",res)
# Type check
print(type(res))

输出结果

运行上面的代码给我们以下结果-

Given string :
["Mon", 2,"Tue", 4, "Wed",3]

The converted list :
['Mon', 2, 'Tue', 4, 'Wed', 3]