De str a list
Publicado por Gustavo Girardelli (24 intervenciones) el 16/03/2021 19:36:07
Hola:
Parto de un archivo de texto plano llamado uno.txt
Que contiene una lista de listas (una matriz), con el adecuado formato en Python.
Luego, lo abro, línea a línea, y lo asigno a una variable str
Esto me muestra:
O sea la matriz. Pero sigue siendo de tipo str, cuando lo convierto al tipo list:
Lo hace una lista de una sola dimensión, el la que cada caracter es un elemento del vector (incluidas hasta las comillas).
En el que solo se reconocen el primer y el último corchetes.
Mi pregunta es:
¿Existe la manera de de convertir un texto con formato de lista en una lista?
Desde ya, muchas gracias por el tiempo y la paciencia y saludos mil.
.
Parto de un archivo de texto plano llamado uno.txt
1
[['1683027', 'F', '37', 'Argentina', 'Buenos Aires', 'Merlo', 'Buenos Aires', '12/12/2020', '4/8/2020', '32', '', 'NO', '', 'NO', '', 'NO', '6', 'Sospechoso', '6', '', '539'], ['1248414', 'M', '31', 'SIN ESPECIFICAR', 'CABA', 'SIN ESPECIFICAR', 'CABA', '10/12/2020', '3/7/2020', '27', '', 'NO', '', 'NO', '', 'NO', '2', 'Confirmado', '2', '12/12/2020', '0']]
Que contiene una lista de listas (una matriz), con el adecuado formato en Python.
Luego, lo abro, línea a línea, y lo asigno a una variable str
1
2
3
4
5
x = ''
t = open('uno.txt','r')
for i in t:
x += i
print(x)
Esto me muestra:
1
[['1683027', 'F', '37', 'Argentina', 'Buenos Aires', 'Merlo', 'Buenos Aires', '12/12/2020', '4/8/2020', '32', '', 'NO', '', 'NO', '', 'NO', '6', 'Sospechoso', '6', '', '539'], ['1248414', 'M', '31', 'SIN ESPECIFICAR', 'CABA', 'SIN ESPECIFICAR', 'CABA', '10/12/2020', '3/7/2020', '27', '', 'NO', '', 'NO', '', 'NO', '2', 'Confirmado', '2', '12/12/2020', '0']]
O sea la matriz. Pero sigue siendo de tipo str, cuando lo convierto al tipo list:
1
2
3
4
5
6
x = ''
t = open('uno.txt','r')
for i in t:
x += i
x = list(x)
print(x)
Lo hace una lista de una sola dimensión, el la que cada caracter es un elemento del vector (incluidas hasta las comillas).
1
['[', '[', "'", '1', '6', '8', '3', '0', '2', '7', "'", ',', ' ', "'", 'F', "'", ',', ' ', "'", '3', '7', "'", ',', ' ', "'", 'A', 'r', 'g', 'e', 'n', 't', 'i', 'n', 'a', "'", ',', ' ', "'", 'B', 'u', 'e', 'n', 'o', 's', ' ', 'A', 'i', 'r', 'e', 's', "'", ',', ' ', "'", 'M', 'e', 'r', 'l', 'o', "'", ',', ' ', "'", 'B', 'u', 'e', 'n', 'o', 's', ' ', 'A', 'i', 'r', 'e', 's', "'", ',', ' ', "'", '1', '2', '/', '1', '2', '/', '2', '0', '2', '0', "'", ',', ' ', "'", '4', '/', '8', '/', '2', '0', '2', '0', "'", ',', ' ', "'", '3', '2', "'", ',', ' ', "'", "'", ',', ' ', "'", 'N', 'O', "'", ',', ' ', "'", "'", ',', ' ', "'", 'N', 'O', "'", ',', ' ', "'", "'", ',', ' ', "'", 'N', 'O', "'", ',', ' ', "'", '6', "'", ',', ' ', "'", 'S', 'o', 's', 'p', 'e', 'c', 'h', 'o', 's', 'o', "'", ',', ' ', "'", '6', "'", ',', ' ', "'", "'", ',', ' ', "'", '5', '3', '9', "'", ']', ',', ' ', '[', "'", '1', '2', '4', '8', '4', '1', '4', "'", ',', ' ', "'", 'M', "'", ',', ' ', "'", '3', '1', "'", ',', ' ', "'", 'S', 'I', 'N', ' ', 'E', 'S', 'P', 'E', 'C', 'I', 'F', 'I', 'C', 'A', 'R', "'", ',', ' ', "'", 'C', 'A', 'B', 'A', "'", ',', ' ', "'", 'S', 'I', 'N', ' ', 'E', 'S', 'P', 'E', 'C', 'I', 'F', 'I', 'C', 'A', 'R', "'", ',', ' ', "'", 'C', 'A', 'B', 'A', "'", ',', ' ', "'", '1', '0', '/', '1', '2', '/', '2', '0', '2', '0', "'", ',', ' ', "'", '3', '/', '7', '/', '2', '0', '2', '0', "'", ',', ' ', "'", '2', '7', "'", ',', ' ', "'", "'", ',', ' ', "'", 'N', 'O', "'", ',', ' ', "'", "'", ',', ' ', "'", 'N', 'O', "'", ',', ' ', "'", "'", ',', ' ', "'", 'N', 'O', "'", ',', ' ', "'", '2', "'", ',', ' ', "'", 'C', 'o', 'n', 'f', 'i', 'r', 'm', 'a', 'd', 'o', "'", ',', ' ', "'", '2', "'", ',', ' ', "'", '1', '2', '/', '1', '2', '/', '2', '0', '2', '0', "'", ',', ' ', "'", '0', "'", ']', ']']
En el que solo se reconocen el primer y el último corchetes.
Mi pregunta es:
¿Existe la manera de de convertir un texto con formato de lista en una lista?
Desde ya, muchas gracias por el tiempo y la paciencia y saludos mil.
.
Valora esta pregunta
0