Я хотел бы извлечь значения х и у из текстового файла - PullRequest
2 голосов
/ 14 мая 2019

У меня есть код, который хранит значения x и y в текстовом файле.TXT-файл хранит значения в каждой строке каждый раз, когда я говорю программе сохранять данные.

Это выглядит так в текстовом файле:

[(1.0, 1.80), (2.0, 1.80), (3.0, 0.70), etc...]

Я пытался извлечь значения с помощью функции np.genfromtxt(), но я продолжаю получать значения nan.Я прочитал документацию, но не могу ее интерпретировать.

Как я могу сохранить эти значения x и y в переменных, чтобы я мог в дальнейшем работать с ними вне txt-файла?

Ответы [ 2 ]

3 голосов
/ 14 мая 2019

Использование ast модуль

Ex:

import ast

with open(filename) as infile:         #Read file
    for line in infile:                #Iterate Each line
        print(ast.literal_eval(line))  #Convert to python object

Выход:

[(1.0, 1.8), (2.0, 1.8), (3.0, 0.7)]
[(1.0, 1.8), (2.0, 1.8), (3.0, 0.7)]
[(1.0, 1.8), (2.0, 1.8), (3.0, 0.7)]
1 голос
/ 14 мая 2019

Если структура всех этих скобок и пробелов в точности такая, как вы написали:

x = []
y = []
with open('filename.txt') as f:
    for line in f:
        pairs = line[1:-2].split('),')
        for p in pairs:
            x.append(float(p.split(', ')[0].strip()[1:]))
            y.append(float(p.split(', ')[1].strip()))

# print(x, y)
# [1.0, 2.0, 3.0] [1.8, 1.8, 0.7]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...