python - 每次我在类内调用函数时如何打印语句
问题描述
class Test:
print("This is class Test")
def meth1(self):
print("This is meth1")
def meth2(self):
print("This is meth2")
a=Test()
我的问题是每次我在课堂上调用 meth1 和 meth2 时。我需要在函数打印语句说之前打印语句。
"This is from class Test"
输出应该是这样的:
This is from class test This is from meth1 This is from class test This is from meth2
解决方案
您可以使用装饰器的概念。就像下面给出的
def desc_message(func):
def wrapper(*args, **kwargs):
print("This is class test")
func(*args, **kwargs)
return wrapper
class Test:
@desc_message
def meth1(self):
print("This is meth1")
@desc_message
def meth2(self):
print("This is meth2")
a=Test()
输出将是
This is class test
This is meth1
This is class test
This is meth2
推荐阅读
- omnet++ - 在静脉中,“RecievedBroadcasts”是否也包含“SNIRLostPackets”和“RXTXLostPackets”?
- android - React-native-ble-plx:是否可以将指示配置为标准协议而不是通知?
- amazon-web-services - Lambda 安全组删除挂起,无法在 AWS 控制台中删除
- python - Google OR 工具 - 重新审视列车调度问题
- java - Swagger 生成器将类附加到包名的一部分
- jquery - jQuery resize() 用于显示和隐藏图像
- python - 只有数值的 DF 列
- c - 使用C中的中序横向将树数据结构存储到数组中
- python - 我如何在 concurrent.futures.ThreadPoolExecutor.map 函数中计时执行其他函数?
- jmeter - 如何在 JSR223 PreProcessor 中访问 CSV 配置数据集值