Converter uma string em lista em Python
-
Converter string em lista em Python utilizando a função
list()
-
Converter string em lista em Python utilizando o método
split()
-
Converter String em Lista em Python utilizando a função
eval()
-
Converter String para Lista em Python utilizando o método
ast
A lista Python é mutável; para que os seus elementos possam ser substituídos, modificados, e apagados a qualquer momento durante a execução do programa. A string é uma combinação de caracteres entre aspas simples ou duplas, e não é mutável.
Neste artigo, iremos demonstrar diferentes métodos para converter uma string numa lista em Python.
Converter string em lista em Python utilizando a função list()
A função list()
converte a string numa lista em Python.
Tomemos o código abaixo como um exemplo:
test_str = "Python"
list(test_str)
Resultado:
['P', 'y', 't', 'h', 'o', 'n']
A função list()
toma uma string como argumento e converte-a numa lista. Cada carácter da string torna-se o elemento individual da lista.
Converter string em lista em Python utilizando o método split()
Tomemos um string em valores separados por vírgula.
string = "x,y,z"
Agora dividimos os valores da string nos elementos da lista.
O código completo do exemplo é o seguinte:
string = "x,y,z"
output = string.split(",")
output
Resultado:
['x', 'y', 'z']
O exemplo acima divide a string no delimitador dado, ,
, para uma lista. Se o delimitador não for dado, utiliza o espaço branco como valor por defeito.
Converter String em Lista em Python utilizando a função eval()
Este método só converterá a string numa lista quando a string estiver segura; significa que a string na função eval()
é parsed e determinada como uma expressão Python. Se não puder ser avaliada como uma expressão Python, gerará um erro. Não é um método pítonico. Poderíamos utilizar métodos split()
ou ast
em vez disto.
Tomemos uma string especificada para este método.
string = "['xxx','yyy','zzz']"
O código completo do exemplo é o seguinte:
string = "['xxx','yyy','zzz']"
output = eval(string)
output
Resultado:
['xxx', 'yyy', 'zzz']
Converter String para Lista em Python utilizando o método ast
Este método utilizará a biblioteca ast
(Abstract Syntax Trees). Com esta biblioteca, utilizaremos a função eval()
para converter uma string para uma lista.
O código completo do exemplo é o seguinte:
import ast
string = "['xxx','yyy','zzz']"
output = ast.literal_eval(string)
output
Resultado:
['xxx', 'yyy', 'zzz']
Artigo relacionado - Python List
- Converter um dicionário em uma lista em Python
- Remova todas as ocorrências de um elemento de uma lista em Python
- Remover duplicatas da lista em Python
- Obter a Média de uma Lista em Python
- Qual é a diferença entre os métodos de lista anexar e estender
- Como Converter uma Lista para String em Python