Циклический просмотр текстового файла, поиск ключевых слов, создание словаря и добавление словаря в список словарей. - PullRequest
0 голосов
/ 03 мая 2018

У меня есть этот набор данных, который выглядит следующим образом:

    ['Registration:1005227',
    'FileNumber:A0485456',
    'Status:Terminated',
    'FAA\xa0Study:02-ANE-198-OE',
    'Contact:Department,Regulatory(617)585-7600',
    'Locatedin:\xa0ABINGTON,MALat/Long:42-06-48.0N070-56-58.0W\xa0',
    'PaintingandLightingSpecifications:None',
    'Registration:1015227',
    'FileNumber:A0485451',
     etc etc...]

... тысячи раз. Работая в пандах, я подумал, что если мне нужны только данные регистрации, широты и долготы, я бы перебрал каждую строку, обнаружил ключевые слова, а затем добавил фрагмент в словарь.

reg = "Registration"
lat = "Lat/"
long = "Long:"

d = {}
theList = []

for line in data:
    if reg in line:
        d["Registration"] = line[13:20]
    if lat in line:
        d["Lat"] = line[-24:-14]   
    if long in line:
        d["Lng"] = line[-13:-2] 

    theList.append(d)

В конце концов, список словарей позволит мне создать фрейм данных. Проблема, с которой я сталкиваюсь, состоит в том, что цикл берет данные только из последней записи и добавляет их в 'theList' столько раз, сколько существует записей.

Я пытался поместить .append вне цикла for. Я пытался дать каждому выражению if собственный цикл for, но, похоже, ничего не работает. Что я делаю не так, и есть ли лучший способ подойти к этой проблеме?

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