Shu*_*hub 3 python customization read-eval-print-loop
在 Python shell 中输入表达式会输出该repr()表达式的值。
是否可以将此默认函数设置为某些用户定义的函数?
您正在寻找的是sys.displayhook:
sys.displayhook根据在交互式 Python 会话中输入的表达式的计算结果进行调用。可以通过将另一个单参数函数分配给 来自定义这些值的显示sys.displayhook。
正常行为:
>>> from datetime import datetime
>>> datetime.now()
datetime.datetime(2021, 11, 25, 15, 26, 1, 772968)
Run Code Online (Sandbox Code Playgroud)
然后
>>> import sys
>>> def new_hook(value):
... sys.stdout.write(str(value))
... sys.stdout.write("\n")
...
>>> sys.displayhook = new_hook
Run Code Online (Sandbox Code Playgroud)
修改行为:
>>> datetime.now()
2021-11-25 15:26:14.177267
Run Code Online (Sandbox Code Playgroud)