Python: чтение и получение определенных частей текстового файла - PullRequest
1 голос
/ 21 июня 2020

У меня есть текстовый файл с координатами в формате [x1, y1, x2, y2]. Как мне получить только координаты y1 и y2?

Пример:

[23, 45, 90, 79]

Получить 45 и 79

Ответы [ 4 ]

0 голосов
/ 21 июня 2020

Если ваши данные представляют собой строку типа s в данном коде, используйте функции полосы для удаления [, ] и используйте функцию разделения, в противном случае преобразуйте список s = [23, 45, 90, 79] в строку s = str(s):

s = '[23, 45, 90, 79]'
s = s.strip('[').strip(']').split(',')
#Now getting y1 and y2 :
y1 = int(s[1])                # You can use the float() function if needed
y2 = int(s[3])
0 голосов
/ 21 июня 2020

Если координаты всегда остаются в том же положении, вы можете использовать:

array = [23,45,90,79]
y1_y2 = [array[1], array[3]]
0 голосов
/ 21 июня 2020

Это будет делать:

import re

with open('text.txt', 'r') as f:
    for line in f.readlines():
        x, y = re.findall(r'\d+.*?(\d+).*?\d+.*?(\d+)', line)[0] 
        print(x,y)
0 голосов
/ 21 июня 2020
x = [23, 45, 90, 79]

x[1] будет 45 и x[3] будет 79. Таким образом, вы можете распечатать их как print(x[1],x[3]). Результатом будет 45 79

x = [[23, 45, 90, 79],[191, 64, 243, 93],[437, 76, 514, 127]]
for i in range(len(x)):
    print(x[i][1],x[i][3])

будет напечатано :

45 79
64 93
76 127
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...