Python美化dir()——直观查看类属性、函数、异常

问题描述

使用内置函数dir()可以返回当前范围的属性列表,对于查看陌生不熟悉的模块、变量用法特别方便,但是直接输出看上去密密麻麻非常杂乱

>>> import requests
>>> dir(requests)
['ConnectTimeout', 'ConnectionError', 'DependencyWarning', 'FileModeWarning', 'HTTPError', 'NullHandler', 'PreparedRequest', 'ReadTimeout', 'Request', 'RequestE
xception', 'RequestsDependencyWarning', 'Response', 'Session', 'Timeout', 'TooManyRedirects', 'URLRequired', '__author__', '__author_email__', '__build__', '__b
uiltins__', '__cached__', '__cake__', '__copyright__', '__description__', '__doc__', '__file__', '__license__', '__loader__', '__name__', '__package__', '__path
__', '__spec__', '__title__', '__url__', '__version__', '_check_cryptography', '_internal_utils', 'adapters', 'api', 'auth', 'certs', 'chardet', 'check_compatib
ility', 'codes', 'compat', 'cookies', 'cryptography_version', 'delete', 'exceptions', 'get', 'head', 'hooks', 'logging', 'models', 'options', 'packages', 'patch
', 'post', 'put', 'pyopenssl', 'request', 'session', 'sessions', 'status_codes', 'structures', 'urllib3', 'utils', 'warnings']

解决方案

  1. 安装
pip install pdir2
  1. 导入
import pdir
  1. 使用pdir()函数
import requests
pdir(requests)

效果如下

在这里插入图片描述

>>> import pdir
>>> pdir(requests)
property:
    __author__, __author_email__, __build__, __builtins__, __cake__, __copyright__, __description__, __license__, __title__, __url__, __version__, _internal_uti
ls, adapters, api, auth, certs, chardet, codes, compat, cookies, cryptography_version, exceptions, hooks, logging, models, packages, pyopenssl, sessions, status
_codes, structures, urllib3, utils, warnings
module attribute:
    __cached__, __file__, __loader__, __name__, __package__, __path__, __spec__
special attribute:
    __doc__
class:
    NullHandler: This handler does nothing. It's intended to be used to avoid the
    PreparedRequest: The fully mutable :class:`PreparedRequest <PreparedRequest>` object,
    Request: A user-created :class:`Request <Request>` object.
    Response: The :class:`Response <Response>` object, which contains a
    Session: A Requests session.
function:
    _check_cryptography:
    check_compatibility:
    delete: Sends a DELETE request.
    get: Sends a GET request.
    head: Sends a HEAD request.
    options: Sends an OPTIONS request.
    patch: Sends a PATCH request.
    post: Sends a POST request.
    put: Sends a PUT request.
    request: Constructs and sends a :class:`Request <Request>`.
    session: Returns a :class:`Session` for context-management.
exception:
    ConnectTimeout: The request timed out while trying to connect to the remote server.
    ConnectionError: A Connection error occurred.
    DependencyWarning: Warned when an attempt is made to import a module with missing optional
    FileModeWarning: A file was opened in text mode, but Requests determined its binary length.
    HTTPError: An HTTP error occurred.
    ReadTimeout: The server did not send any data in the allotted amount of time.
    RequestException: There was an ambiguous exception that occurred while handling your
    RequestsDependencyWarning: An imported dependency doesn't match the expected version range.
    Timeout: The request timed out.
    TooManyRedirects: Too many redirects.
    URLRequired: A valid URL is required to make a request.

参考文献

  1. Pretty dir() printing with joy
发布了223 篇原创文章 · 获赞 63 · 访问量 12万+

猜你喜欢

转载自blog.csdn.net/lly1122334/article/details/104068003