测量应用程序性能的实用工具
项目描述
简单的实用工具,使跟踪Python程序在正常操作下的性能变得更容易
上下文管理器
DisplayElapsed
此上下文管理器可以轻松显示具有用户可接受格式的控制台导向的起始/结束消息。
用法
with DisplayElapsed("{now} uploading {filename} (original: {original})\n", "{now} uploaded {filename} in {elapsed:.1f} seconds", filename=remote_path, original=local_path): upload_filename(…)
注意
DisplayElapsed需要一个位置参数:message。消息使用str.format格式化,自动提供{now}和{elapsed}的值。所有其他传递给DisplayElapsed的关键字参数都将用于格式化。
如果message包含{{now}},它将被当前时间戳替换
如果message不包含{{now}},它将被添加到前面,除非include_timestamp=False
如果没有指定postamble,它将默认为" ({elapsed:.1f} 秒)"
如果没有指定output,它将默认为sys.stdout
如果output_on_error不是True,当发生异常时将抑制正常的后缀显示
默认情况下,在起始消息后不会发出换行符,因此消息和后缀将显示在同一行上。如果支持,output将刷新以提供即时反馈。如果你想要多行输出,请提供以\n结尾的消息。