python shell中的默认函数[重复]

Posted

技术标签:

【中文标题】python shell中的默认函数[重复]【英文标题】:Default function in python shell [duplicate] 【发布时间】:2022-01-03 10:26:09 【问题描述】:

在 Python shell 中输入表达式会输出表达式的repr()

是否可以将此默认功能设置为某些用户定义的功能?

【问题讨论】:

您是要更改对象的repr() 还是要更改shell 调用的实际函数? 查看rjb's answer on this other question 以获得良好的实现。 【参考方案1】:

你要找的是sys.displayhook:

sys.displayhook 在计算交互式 Python 会话中输入的表达式的结果时调用。可以通过将另一个单参数函数分配给sys.displayhook 来自定义这些值的显示。

正常行为:

>>> from datetime import datetime
>>> datetime.now()
datetime.datetime(2021, 11, 25, 15, 26, 1, 772968)

然后

>>> import sys
>>> def new_hook(value):
...   sys.stdout.write(str(value))
...   sys.stdout.write("\n")
... 
>>> sys.displayhook = new_hook

修改行为:

>>> datetime.now()
2021-11-25 15:26:14.177267

【讨论】:

以上是关于python shell中的默认函数[重复]的主要内容,如果未能解决你的问题,请参考以下文章

Shell之函数

Python函数

如何在Python中定义静态变量

在python中以特定间隔运行任务[重复]

如何使用 OpenCV 在 Python 中为图像添加噪声(高斯/盐和胡椒等)[重复]

参数传递:shell脚本调用一个带参数的python函数