要仅打印部分日志,您可以使用Python的argparse库来解析命令行参数,并使用这些参数来控制日志级别。以下是一个示例代码片段:
import argparse
import logging
def main():
# 创建参数解析器
parser = argparse.ArgumentParser(description='Print a log message')
# 添加命令行参数
parser.add_argument('-v', '--verbose', action='store_true', help='Enable verbose logging')
# 解析命令行参数
args = parser.parse_args()
# 根据命令行参数设置日志级别
if args.verbose:
logging.basicConfig(level=logging.DEBUG)
else:
logging.basicConfig(level=logging.INFO)
# 打印日志消息
logging.debug('This is a debug message')
logging.info('This is an info message')
logging.warning('This is a warning message')
if __name__ == '__main__':
main()
在上面的示例中,我们创建了一个参数解析器并添加了一个名为--verbose
(或简写为-v
)的命令行参数。如果用户在命令行中使用了--verbose
参数,则设置日志级别为DEBUG,允许打印所有级别的日志消息。否则,将日志级别设置为INFO,仅允许打印INFO级别及以上的日志消息。
您可以通过以下命令行示例运行上述代码片段:
python my_script.py -v
这将启用详细的调试级别日志并打印所有消息。如果您不包含-v
参数,则只会打印INFO级别及以上的日志消息。
上一篇:argparse参数顺序问题
下一篇:argparse的非英文参数