У меня есть данные в файле text.txt
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
[[10, 11, 12], [13, 14, 15], [16, 17, 18]]
и т.д. Я хочу прочитать каждую строку текстового файла и рассматривать их как целые числа, например, начертить эти точки в трехмерном пространстве. Когда я импортирую файл
with open('text.txt') as f:
content = f.readlines()
for x in content:
print(x)
он принимает это как:
'[','[','1' etc...
Поэтому я смущен тем, что использовать в качестве разделителя для функции split(). По достоинству оценят некоторые предложения. Заранее спасибо.
Вы можете использовать встроенную функцию eval() для интерпретации списков python из файлов:
with open('file.txt') as fp:
for line in fp:
pylist = eval(line)
print(pylist)
Если вы не на 100% уверены в характере этого файла или если он будет содержать данные, созданные другим пользователем вручную, как указано в @G_M, вы должны использовать ast.literal_eval, который будет оценивать только литерал python:
import ast
with open('file.txt') as fp:
for line in fp:
pylist = ast.literal_eval(line)
print(pylist)