Форум программистов, компьютерный форум CyberForum.ru

Python

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 4.77
t1m0n
606 / 393 / 21
Регистрация: 03.11.2009
Сообщений: 1,822
#1

Преобразование текстового файла в JSON - Python

09.12.2012, 02:51. Просмотров 1816. Ответов 2

Есть текстовый файл такого содержания

Код
9851312827,9851356824;Оружие уличного бойца;А. Тарас, А. Владзимирский;2006;256;985-13-1282-7,985-13-5682-4;
5170083270;Сделай это сам;blank_name;2005;480;5-17-008327-0;
5170108710,527113525X,9789851398689;В ожидании ребенка;Арлин Эйзенберг, Хейди Е. Муркофф, Санди Е. Хатауэй;2007;656;5-17-010871-0, 5-271-13525-X, 978-985-13-9868-9;
3822871508;Брейгель;Роз-Мари и Райнер Хаген;2002;96;3-8228-7150-8;
5718702488;Про разведчика Рябова;blank_name;1999;62;5-7187-0248-8;
5852670335;Про Чапая;blank_name;2000;36;5-85267-033-5;
как его преобразовать в JSON-файл вида
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
json = {
        'isbn10' : [
            "9851312827",
            "9851356824"
        ],
        'autor': "А. Тарас, А. Владзимирский",
        'pub_year': '2006',
        'page': '256',
        'isbn13': [
            "985-13-1282-7",
            "985-13-5682-4"
        ],
        }
что почитать по этой теме?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.12.2012, 02:51     Преобразование текстового файла в JSON
Посмотрите здесь:
Преобразование файла csv в файл json Python
Python Преобразование CSV в JSON
Порядок при считывании из json файла Python
Определение текстового файла Python
Python Сжатие текстового файла по словарю
Считать матрицу из текстового файла Python
Python Запись текстового файла в массив данных
Python Удалить из текстового файла всю информацию
Python Обработка текстового файла и дальнейшие подсчеты
Добавить в определенное место текстового файла строку Python
Преобразование python файла в tar.gz архив Python
Генератор аббревиатур 2. Как брать слова из текстового файла? Python

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ilnurgi
137 / 137 / 18
Регистрация: 20.02.2012
Сообщений: 596
09.12.2012, 22:22     Преобразование текстового файла в JSON #2
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# coding: utf-8
import os
 
path = os.getcwd()
 
data = open(path+'\\injson.txt').read().decode('utf-8').splitlines()
 
dictj = {}
a = 0
for i in data:
    isbn10, title, autor, pub_year, page, isbn13, musor = i.split(';')
    dictj[a] = {'isbn10':isbn10.split(','),
                'autor':autor,
                'pub_year':pub_year,
                'page':page,
                'isbn13':isbn13.split(',')}
    a+=1
 
for i in dictj:
    print dictj[i], '\n'
pyuser
202 / 187 / 22
Регистрация: 26.05.2011
Сообщений: 344
10.12.2012, 05:54     Преобразование текстового файла в JSON #3
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
import csv
import json
 
def convert(fname_in, fname_out):
    fieldnames = ("isbn10", "title", "autor", "pub_year", "page", "isbn13", "tmp")
 
    with open(fname_in, "rt", encoding="utf-8") as fin, \
            open(fname_out, "wt", encoding="utf-8") as fout:
 
        fout.write("[\n")
        for row in csv.DictReader(fin, fieldnames=fieldnames, delimiter=";"):
            row.pop("title")
            row.pop("tmp")
 
            row["isbn10"] = row["isbn10"].split(",")
            row["isbn13"] = row["isbn13"].split(",")
            fout.write(json.dumps(row, ensure_ascii=False, indent=4) + "\n")
        fout.write("]")
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru