Как конфертировать из файла TSV в файл JSON? - PullRequest
0 голосов
/ 04 июня 2019

Итак, я знаю, что этот вопрос может быть продублирован, но я просто хочу узнать и понять, как можно преобразовать файл TSV в JSON? Я пытался искать везде, и я не могу найти ключ или понять код.

Так что это не код Python, а файл TSV, который я хочу преобразовать в JSON:

title   content difficulty
week01  python syntax   very easy
week02  python data manipulation    easy
week03  python files and requests   intermediate
week04  python class and advanced concepts  hard

И это файл JSON, который я хочу выводить.

[{
        "title": "week 01",
        "content": "python syntax",
    "difficulty": "very easy"
    },
    {
        "title": "week 02",
        "content": "python data manipulation",
    "difficulty": "easy"
    },
    {
        "title": "week 03",
        "content": "python files and requests",
    "difficulty": "intermediate"
    },
    {
        "title": "week 04",
        "content": "python class and advanced concepts",
    "difficulty": "hard"
    }
]

Ответы [ 2 ]

1 голос
/ 04 июня 2019

Для этого необходимы следующие встроенные модули: csv и json .

Чтобы прочитать разделенные табуляцией данные с помощью модуля CSV, используйте параметр delimiter="\t":

Еще удобнее, модуль CSV имеет DictReader, который автоматически считывает первую строку как ключи столбца и возвращает оставшиеся строки как словари:

with open('file.txt') as file:
    reader = csv.DictReader(file, delimiter="\t")
    data = list(reader)
    return json.dumps(data)

Модуль JSON также может записывать напрямую в файл вместо строки.

1 голос
/ 04 июня 2019

если вы используете pandas, вы можете использовать метод to_json с опцией orient="records", чтобы получить список записей, которые вы хотите.

my_data_frame.to_json(orient="records")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...