在 Ruby 中,可以通过 p my_obj 检查变量(对象),以便将其打印为“深”且尽可能详细。它对于记录和调试很有用。在 python 中,我认为它是 print my_obj ,只是它没有打印太多但是 <requests.sessions.Session object at 0x7febcb29b390> 根本没有用。

我该怎么做呢?

最佳答案

您可以使用 vars 内置方法来获取对象属性的字典:

>>> import requests
>>> r = requests.Session()
>>> vars(r)
{'cookies': <<class 'requests.cookies.RequestsCookieJar'>[]>, 'stream': False, 'hooks': {'response': []}, 'auth': None, 'trust_env': True, ...}

也许将它与 pprint 结合起来得到一个有点格式化的输出:
>>> import pprint
>>> pprint.pprint(vars(r), indent=2)
{ 'adapters': OrderedDict([('https://', <requests.adapters.HTTPAdapter object at 0x103106690>), ('http://', <requests.adapters.HTTPAdapter object at 0x103106790>)]),
  'auth': None,
  'cert': None,
  'cookies': <<class 'requests.cookies.RequestsCookieJar'>[]>,
  ...

关于python - 通过打印来检查变量(对象),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24743805/

10-13 02:15