прочитать таблицу данных из файла .txt и проанализировать ее в переменной - PullRequest
0 голосов
/ 04 июня 2018

Мне нужно прочитать таблицу данных из файла .txt с python 2.7 и проанализировать ее в переменной sir ... Я надеюсь, что кто-то мне поможет ..

У меня есть данные в .txt (10 элементов):

LEW01,14/01/2016,07:50:00,15.6,-19,943,-8.7,-228,-19,943,-8.7,-0.9,48.5,4.14,12.39
LEW01,14/01/2016,08:00:00,16.2,-18,944,-8.6,-229,-19,943,-8.6,-0.9,48.5,4.14,12.39
LEW01,14/01/2016,08:10:00,16.8,-19,943,-8.7,-228,-18,944,-8.6,-0.9,48.4,4.16,12.39
LEW01,14/01/2016,08:20:00,17.6,-18,944,-8.6,-229,-18,943,-8.6,-0.9,48.5,4.16,12.44
LEW01,14/01/2016,08:30:00,18.4,-19,943,-8.6,-229,-18,943,-8.6,-0.9,48.5,0.96,12.44
LEW01,14/01/2016,08:40:00,19.4,-18,944,-8.6,-230,-18,943,-8.6,-0.9,48.4,4.18,12.49
LEW01,14/01/2016,08:50:00,20.8,-19,943,-8.7,-230,-18,943,-8.6,-0.9,48.6,4.18,12.49
LEW01,14/01/2016,09:00:00,22.2,-18,944,-8.6,-231,-18,942,-8.6,-0.9,48.6,4.18,12.49
LEW01,14/01/2016,09:10:00,23.4,-19,943,-8.7,-232,-17,942,-8.6,-0.9,48.6,4.18,12.54
LEW01,14/01/2016,09:20:00,24.6,-18,944,-8.6,-233,-17,942,-8.6,-0.9,48.7,4.18,12.59

когда я компилирую с кодом python:

with open('data_peng.txt') as x:
    for rec in x:
        a=rec.split(',')[0]
        b=rec.split(',')[1]
        c=rec.split(',')[2]
        d=rec.split(',')[3]
        e=rec.split(',')[4]
        f=rec.split(',')[5]
        g=rec.split(',')[6]
        h=rec.split(',')[7]
        i=rec.split(',')[8]
        j=rec.split(',')[9]
        k=rec.split(',')[10]
        l=rec.split(',')[11]
        m=rec.split(',')[12]
        n=rec.split(',')[13]
        o=rec.split(',')[14]

output:

>>> a
'LEW01'
>>> b
'14/01/2016'
>>> c
'09:20:00'
>>> d
'24.6'
>>> e
'-18'
>>> f
'944'
>>> g
'-8.6'
>>> h
'-233'
>>> i
'-17'
>>> j
'942'
>>> k
'-8.6'
>>> l
'-0.9'
>>> m
'48.7'
>>> n
'4.18'
>>> o
'12.59'

Что я хочу, например, переменная c:

>>> c
 [07:50:00,08:00:00,08:10:00,08:20:00,08:30:00,08:40:00,08:50:00,09:00:00,09:10:00,09:20:00]

Пожалуйста, помогите мне, большое спасибо

Ответы [ 2 ]

0 голосов
/ 04 июня 2018

Вот быстрое решение, которое заполнит один объект именами столбцов, которые вы ищете:

import csv

o = {}
cols = ['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o']
with open('data_peng.txt', 'r') as csvin:
   csvin = csv.reader(csvin)
   for row in csvin:
       for idx, col in enumerate(cols):
           o.setdefault(col, []).append(row[idx])

print o['c']
0 голосов
/ 04 июня 2018

Как насчет:

with open('data_peng.txt') as x:
    col3 = [line.split(',')[2] for line in x]

print(col3)

При этом он выглядит как CSV, и любой более сложный синтаксический анализ может выиграть от использования встроенного в Python csv модуля .

Кроме того, я отредактировал форматирование вашего вопроса, пожалуйста, убедитесь, что я ничего не изменил.

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