Или есть ли лучший способ быстро произвести содержание массива (многомерный или что не).Спасибо.
Оператор python print отлично справляется с форматированием многомерных массивов, не требуя print_r , доступного в php.
Поскольку определение для печати гласит, что каждый объект преобразуется в строку, и поскольку простые массивы печатают '[', за которым следует список значений объектов, разделенных запятыми, за которым следует ']', это будет работать для любой глубины и форма массивов.
Например,
>>> x = [[1,2,3],[4,5,6]]
>>> print x
[[1, 2, 3], [4, 5, 6]]
Если вам нужно более сложное форматирование, чем это, ответ AJ , предлагающий pprint , вероятно, будет правильным решением.
print
и pprint
отлично подходят для встроенных типов данных или классов, которые определяют разумное представление объекта. Если вам нужен полный дамп произвольных объектов, вам придется накатить свой собственный. Это не так сложно: просто создайте рекурсивную функцию с базовым случаем, являющимся любым встроенным типом данных, не являющимся контейнером, и рекурсивным случаем, применяющим функцию к каждому элементу контейнера или каждому атрибуту объекта, который можно получить используя dir ()
или модуль inspect
.