Есть ли Python, эквивалентный Данным Perl:: Самосвал для осмотра структур данных?

Есть ли модуль Python, который может использоваться таким же образом в качестве Perl Data::Dumper модуль?

Править: Извините, я должен был быть более ясным. Я был главным образом после модуля для осмотра данных вместо сохранения.

BTW спасибо за ответы. Это - один потрясающий сайт!

40
задан Andy Lester 16 November 2019 в 20:28
поделиться

4 ответа

Data :: Dumper имеет два основных применения: сохранение данных и отладка / проверка объектов. Насколько мне известно, нет ничего, что могло бы работать точно так же, как Data :: Dumper.

Я использую pickle для сохранения данных.

Я использую pprint для визуальной проверки моих объектов / отладки.

31
ответ дан 27 November 2019 в 01:48
поделиться

Возможно пара альтернатив: рассол , маршал , полка .

5
ответ дан 27 November 2019 в 01:48
поделиться

Думаю, что ближе всего вы найдете модуль pprint .

>>> l = [1, 2, 3, 4]
>>> l.append(l)
>>> d = {1: l, 2: 'this is a string'}
>>> print d
{1: [1, 2, 3, 4, [...]], 2: 'this is a string'}

>>> pprint.pprint(d)
{1: [1, 2, 3, 4, <Recursion on list with id=47898714920216>],
 2: 'this is a string'}
6
ответ дан 27 November 2019 в 01:48
поделиться
  • Для сериализации там есть много вариантов.

    • Одним из лучших является JSON, не зависящий от языка стандарт сериализации. Он доступен в версии 2.6 в модуле stdlib json , а до этого с тем же API в стороннем модуле simplejson .

    • Вы не хотите использовать маршал , который является довольно низкоуровневым. Если вам нужно то, что он дает, вы можете использовать рассол.

    • Я избегаю использования pickle, формат предназначен только для Python и небезопасен. Десериализация с использованием pickle может выполнять произвольный код.

      • Если вы использовали pickle , вы хотите использовать его реализацию на языке C. (Сделайте import cPickle как pickle .)
  • Для отладки вы обычно хотите посмотреть на объект repr или использовать модуль pprint .

3
ответ дан 27 November 2019 в 01:48
поделиться
Другие вопросы по тегам:

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