Создание JSON из файла .txt с использованием Python - PullRequest
0 голосов
/ 16 марта 2020

Вот как выглядят данные в текстовом файле (с разделителями табуляции):

President, U.S. Vote For 1  0 of 1,599 precincts reporting
Candidate   Party   Votes
Deval Patrick   DEM 0
Bernie Sanders  DEM 0
Joseph R. Biden DEM 0
Michael R. Bloomberg    DEM 0
Elizabeth Warren    DEM 0
Pete Buttigieg  DEM 0
Tom Steyer  DEM 0
Andrew Yang DEM 0
Michael Bennet  DEM 0
John K. Delaney DEM 0
Tulsi Gabbard   DEM 0
Cory Booker DEM 0

Это схема для JSON, которую я хочу создать:

"races": [ {   
        "name": "President, U.S.",
        "reference_id": "US-President",
        "election_date": "2020-03-17",
        "market": "balt",
        "state_postal": "MD",
        "reporting_units": [
            {
                "name": "US",
                "level": "fed",
                "state_postal": "MD",
                "precincts_reporting": 0,
                "total_precincts": 1599,
                "data_source_update_time": "2020-02-25T19:54:23+0000",
                "candidates": [
                    {
                        "last_name": "Patrick",
                        "middle_name":null,
                        "first_name":"Deval",  
                        "party": "DEM",
                        "vote_count": 0,
                    }, ...
                ]
            }
        ]
    }
 ]

Таким образом, candidates объект должен существовать для каждого кандидата, и есть еще много races, которые включены в текстовый файл. Я знаю, что использовал бы json.dumps для этого, но я действительно борюсь с синтаксисом того, как обращаться к каждой строке этого текстового файла.

1 Ответ

0 голосов
/ 16 марта 2020

Если ваш исходный файл является обычным, вы можете рассмотреть возможность анализа файла построчно, чтобы прочитать его в python:

with open(path_to_file, 'r') as f:
    # Loop through each line;
    # Separate logic for parsing 1st line and subsequent lines, 
    # along with any other cases you have to consider
...