Форум сайта python.su
0
Приведу кусочек кода контента который получаю от сервера:
ITowns.initialize({"groups":null,"towns":[{"id":51543,"name":"\u041a\u0440\u0430\u0441\u043d\u043e\u0434\u0430\u0440","island_x":788,"island_y":648,"plenty":"iron","rare":"wood","has_conqueror":false,"researches":{"berth":false,"conscription":false,"mathematics":false},"favor":500}]
Офлайн
1
import json
json.loads(jsonDataString)
json.dumps(dataToEncoding)
Офлайн
0
К примеру
#coding:utf-8 import json jsondata='[{"id":51543,"name":"\u041a\u0440\u0430\u0441\u043d\u043e\u0434\u0430\u0440","island_x":788,"island_y":648,"plenty":"iron","rare":"wood","has_conqueror":false,"researches":{"berth":false,"conscription":false,"mathematics":false},"favor":500}]' a = json.loads(jsondata) b = json.dumps(jsondata) print a print b
pydev debugger: starting
[{u'rare': u'wood', u'name': u'\u041a\u0440\u0430\u0441\u043d\u043e\u0434\u0430\u0440', u'island_x': 788, u'island_y': 648, u'researches': {u'mathematics': False, u'berth': False, u'conscription': False}, u'has_conqueror': False, u'favor': 500, u'plenty': u'iron', u'id': 51543}]
"[{\"id\":51543,\"name\":\"\\u041a\\u0440\\u0430\\u0441\\u043d\\u043e\\u0434\\u0430\\u0440\",\"island_x\":788,\"island_y\":648,\"plenty\":\"iron\",\"rare\":\"wood\",\"has_conqueror\":false,\"researches\":{\"berth\":false,\"conscription\":false,\"mathematics\":false},\"favor\":500}]"
Отредактировано Seganapa (Авг. 8, 2012 10:28:27)
Офлайн
173
SeganapaПочитайте документацию http://docs.python.org/library/json.html
Например в Php, после json_decode, значение “id” лежало бы в массиве к примеру jsondata…
a = json.loads(jsondata) # a - теперь список со словарями print a[0]['id']
Офлайн
0
Теперь понял… я пытался вывести
a['id']
Отредактировано Seganapa (Авг. 8, 2012 12:24:03)
Офлайн
173
SeganapaА документация зачем?
А для чего json.dumps? Гуглил, но толком так и не разобрался.
Seganapahttp://docs.python.org/tutorial/controlflow.html
И как в python перебрать элементы массива (как в Php foreach)? или только циклом For?
Отредактировано reclosedev (Авг. 8, 2012 12:28:37)
Офлайн
0
Правильно ли я понял
json.dumps - сериализирует данные
json.loads - десериализирует данные
? Не сильно дружу с техническим английским, а вся документация именно на нем…
Офлайн
1
Seganapa. Python - совсем не PHP, прочитайте сначала книгу, чтоб понять как с работать.
Книга стоит всего 50$ (в Украине). Но толку от нее дофига.
Тема по выбору книгу находиться в прикрепленном топике, в этом-же разделе.
Офлайн
173
Seganapaда
Правильно ли я понял
json.dumps - сериализирует данные
json.loads - десериализирует данные
SeganapaПридется подружиться, потому что документации на русском мало, но книги есть, в том числе и в свободном доступе:
Не сильно дружу с техническим английским, а вся документация именно на нем…
Zerstoren
Тема по выбору книгу находиться в прикрепленном топике, в этом-же разделе.
Офлайн
0
Спасибо!
Про книги могу сказать одно - когда изучал PHP прочитал кучу книг, но без практики толку нет…
Только когда начал свой первый проект, стал по настоящему вникать в язык…
Прочту книгу Марка Лутца “Изучаем Python”, лишним уж точно не будет…
С python у меня проблема именно с техническим английским, т.к. я четко знаю свою задачу, и примерно как ее реализовать, но какими средствами…? Вся документация на английском, поэтому на форуме и спрашиваю, с надеждой на то, что помогут…
За три дня освоения Python'a я уже научился работать с requests, написал код достаточно непростой авторизации… Начился парсить ответ сервера и при помощи регулярок брать нужные значения…
Конечно все это благодаря Вам, форумчанам, а не книгам…
Отредактировано Seganapa (Авг. 8, 2012 13:50:41)
Офлайн