Форум программистов, компьютерный форум CyberForum.ru Форум программистов | Компьютерный форум | Форум web-программистов | Форум по электронике и бытовой технике | Форум о софте | Научный форум | Карьера и бизнес
CyberForum.ru - форум программистов и сисадминов > >
Восстановить пароль Регистрация

Ответ Создать новую тему
 
09.12.2012, 02:51   #1
t1m0n
Форумчанин
Регистрация: 03.11.2009
Сообщений: 1,578
Репутация: 415 (338)
Лучшие ответы: 8
Преобразование текстового файла в JSON / Python

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

Код Code
1
2
3
4
5
6
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"
        ],
        }
что почитать по этой теме?
09.12.2012, 02:51
AdAgent
Объявления
09.12.2012, 22:22   #2
ilnurgi
Форумчанин
Регистрация: 20.02.2012
Сообщений: 413
Репутация: 93 (93)
Лучшие ответы: 7
Преобразование текстового файла в JSON

Код 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'
Другие темы раздела
Python Goog app engeine: не могу правильно описать адрес
import cgi import datetime import urllib import webapp2 from google.appengine.ext import db from google.appengine.api import images from google.appengine.api import users from google.appengine.ext import webapp from google.appengine.ext.webapp.util import run_wsgi_app
Посоветуйте книгу по Python 2.5 и выше не для новичка Python
Посоветуйте книгу по Python 2.5 (не 3.*) и выше не для новичка. Минимум воды, чтобы не мусолили долго базовые понятия. Читаю Лутца сейчас.
10.12.2012, 05:54   #3
pyuser
Форумчанин
Регистрация: 26.05.2011
Сообщений: 222
Репутация: 120 (120)
Лучшие ответы: 9
Преобразование текстового файла в JSON / Python

Код 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("]")
10.12.2012, 05:54
Yandex
Объявления
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать новую тему

Похожие темы
Тема Раздел Автор Дата
Python Преобразование файла csv в файл json
Есть такие данные: "1","Городецкий Антон","1986-04-05","Дозор","Завулон","1700-11-10","Дозор" "1","Городецкий Антон","1986-04-05","Дозор","Завулон","1700-11-10","Изучение магии" "1","Городецкий Антон","1986-04-05","Дозор","Гессер","1715-05-07","Дозор" "1","Городецкий...
Python kaas 20.03.2014 00:00
C++ Преобразование текстового файла в двоичный и чтение исходных данных из двоичного файла.
#include<iostream> #include<fstream> #include<locale.h> #include<iomanip> #include <cstdlib> using namespace std; struct champ { char naz;
С++ для начинающих VitekSR 16.03.2014 20:38
C (СИ) Преобразование текстового файла
Помогите разработать программу, которая преобразует любой текстовый файл в другой текстовый файл так что бы в каждой второй строке надо удалить третье слово, если такое есть, при этом количество пробелов в строке не должно измениться. Остальные строки не меняются.
C для начинающих Shiar 21.05.2013 09:41
C (СИ) Преобразование текстового файла
Помогите разработать программу, которая преобразует любой текстовый файл в другой текстовый файл так что бы в каждой второй строке надо удалить третье слово, если такое есть, при этом количество пробелов в строке не должно измениться. Остальные строки не меняются.
C для начинающих Shiar 19.05.2013 12:49
JavaScript Открытие и преобразование текстового файла
Нужно с помощью JS(jquery) открывать на локальной машине файл (сам сайт будет тоже открываться с этой локальной машины), потом парсить его и формировать из него табличку. Работа в ie. Как то не хочет у меня работать хотя бы это: var t_file = FSO.OpenTextFile("file3.txt", 1); //открываем...
JavaScript Antiplayer 23.01.2013 15:15
Опции темы


Текущее время: 08:27. Часовой пояс GMT +4.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.7 PL3
Copyright ©2000 - 2014, vBulletin Solutions, Inc.