「Python var dump.py」の版間の差分

提供:onayami
(ページの作成:「<syntaxhighlight lang="python" line> import pprint import pprintpp import beeprint import ppretty class Sage: def __init__(self): self.x = 9 class Hoge: def __init__(self): self.a = 123 self.b = 'moge' self.c = [1, 2, {'mm': 3}] self.d = Sage() def pvars(obj): try: print(vars(obj)) except: print(obj) def ppvars(obj): try: pprint.pprint(vars(obj)) except: pprint.ppri…」)
 
編集の要約なし
 
1行目: 1行目:
<syntaxhighlight lang="python" line>
from pprint import pprint
pprint(vars(value))
</syntaxhighlight>
<syntaxhighlight lang="python" line>
<syntaxhighlight lang="python" line>



2025年9月26日 (金) 21:45時点における最新版

from pprint import pprint
pprint(vars(value))


import pprint
import pprintpp
import beeprint
import ppretty

class Sage:
    def __init__(self):
        self.x = 9

class Hoge:
    def __init__(self):
        self.a = 123
        self.b = 'moge'
        self.c = [1, 2, {'mm': 3}]
        self.d = Sage()

def pvars(obj):
    try:
        print(vars(obj))
    except:
        print(obj)

def ppvars(obj):
    try:
        pprint.pprint(vars(obj))
    except:
        pprint.pprint(obj)

if __name__ == '__main__':
    objs = [
        Hoge(),
        123,
        'asd',
        None,
    ]

    print('\n### print(標準)')
    for o in objs:
        print(o)

    print('\n### pprint(標準)')
    for o in objs:
        pprint.pprint(o)

    print('\n### pvars(print + vars)')
    for o in objs:
        pvars(o)

    print('\n### ppvars(pprint + vars)')
    for o in objs:
        ppvars(o)

    print('\n### pprintpp(サードパーティ)')
    for o in objs:
        pprintpp.pprint(o)

    print('\n### beeprint(サードパーティ)')
    for o in objs:
        beeprint.pp(o)

    print('\n### ppretty(サードパーティ)')
    for o in objs:
        print(ppretty.ppretty(o))


関連項目