python中php的print_r()相当于什么?

ens*_*are 76 php python

或者有更好的方法来快速输出数组的内容(多维或不多).谢谢.

Rob*_*tie 51

python print语句可以很好地格式化multidimesion数组,而不需要php中的print_r.

由于打印的定义指出每个对象都转换为字符串,并且简单数组打印'['后跟逗号分隔的对象值列表后跟']',这将适用于任何深度和形状的数组.

例如

>>> x = [[1,2,3],[4,5,6]]
>>> print x
[[1, 2, 3], [4, 5, 6]]
Run Code Online (Sandbox Code Playgroud)

如果你需要比这更高级的格式,AJ的答案暗示pprint可能是要走的路.


Get*_*ree 11

你正在寻找reprbult-in功能.
http://docs.python.org/2/library/functions.html#func-repr

print repr(variable)
Run Code Online (Sandbox Code Playgroud)

在Python 3中,print不再是语句,因此它将是:

print( repr(variable) )
Run Code Online (Sandbox Code Playgroud)


Muk*_*ain 7

from pprint import pprint

student = {'Student1': { 'Age':10, 'Roll':1 }, 
           'Student2': { 'Age':12, 'Roll':2 }, 
           'Student3': { 'Age':11, 'Roll':3 }, 
           'Student4': { 'Age':13, 'Roll':4 }, 
           'Student5': { 'Age':10, 'Roll':5 }
           }

pprint(student)
Run Code Online (Sandbox Code Playgroud)


sha*_*256 6

您可以尝试以下一种方法:

https://github.com/sha256/python-var-dump

您可以简单地使用安装 pip

pip install var_dump
Run Code Online (Sandbox Code Playgroud)

免责声明:我写的:)


Max*_*keh 5

print并且pprint非常适用于定义理智对象表示的内置数据类型或类.如果你想要完全转储任意对象,你必须自己动手.这并不难:简单地创建一个递归函数,基本情况是任何非容器内置数据类型,以及将函数应用于容器的每个项目或对象的每个属性的递归情况,这可以得到使用dir()inspect模块.