XStream анализируют JSON без корневого узла

Python:

  • Отсутствие статического контроля типов
  • обработка Параметра по умолчанию (конкретно то, что Вы можете изменение параметр по умолчанию для будущих вызывающих сторон!)
  • Слишком много необходимых подчеркиваний (конструкторов нужно вызвать __init__)
  • Отсутствие надлежащих членов парламента, не занимающих официального поста и функций (в соглашении просто говорится, что большинство вещей, которые запускаются с подчеркивания, частное, за исключением всего материала как __getattr__, который не является)
  • Забавный синтаксис для print луг в файл (но они фиксируют это в Python 3)

6
задан Josh Braegger 11 August 2009 в 22:33
поделиться

1 ответ

Короткий ответ: «вы не можете».

XStream необходимо знать, какой класс создать, он получает эти сведения из данных JSON (или XML). Имя класса может иметь псевдоним, но не может быть опущено. Вы можете обойти это следующим образом:

  1. Вручную оберните вашу строку JSON корневым узлом, содержащим имя вашего класса (или псевдоним).
  2. Написав свой собственный читатель, который сделает это за вас. Однако в этом случае вам все равно нужно будет передать имя вашего класса (псевдоним) этому читателю либо явно, либо по соглашению (например, всегда добавляйте 'root', но затем настраивайте его как псевдоним для вашего класса в экземпляре XStream) - поэтому я не Не думаю, что это чище, чем # 1.
4
ответ дан 10 December 2019 в 02:51
поделиться
Другие вопросы по тегам:

Похожие вопросы: