argparse及logging的相关用法
argparse用法
用法直接附上代码
import argparse
def get_args():# 创建解析器parser = argparse.ArgumentParser()# 添加参数parser.add_argument('--triviaqa_file', help='Triviaqa file')parser.add_argument('--squad_file', help='Squad file')parser.add_argument('--wikipedia_dir', help='Wikipedia doc dir')parser.add_argument('--web_dir', help='Web doc dir')parser.add_argument('--seed', default=10, type=int, help='Random seed')parser.add_argument('--max_num_tokens', default=800, type=int, help='Maximum number of tokens from a document')parser.add_argument('--sample_size', default=8000000000000, type=int, help='Random seed')parser.add_argument('--tokenizer', default='tokenizers/punkt/english.pickle', help='Sentence tokenizer')parser.add_argument("--no_progress_bar", action='store_true', help="no progress bar. Good for printing")parser.add_argument("--attention_mode", type=str, choices=['tvm', 'sliding_chunks'],default='sliding_chunks', help='Which implementation of selfattention to use')# 解析参数args = parser.parse_args()return args
args = get_args()
action=‘store_true’,只要运行时该变量有传参就将该变量设为True
logging用法
参考:https://www.cnblogs.com/xianyulouie/p/11041777.html
默认生成的root logger的level是logging.WARNING,低于该级别的就不输出了
级别排序:CRITICAL > ERROR > WARNING > INFO > DEBUG
Logging.Formatter:这个类配置了日志的格式,在里面自定义设置日期和时间,输出日志的时候将会按照设置的格式显示内容。
Logging.Logger:Logger是Logging模块的主体,进行以下三项工作:
- 为程序提供记录日志的接口
- 判断日志所处级别,并判断是否要过滤
- 根据其日志级别将该条日志分发给不同handler
用法直接附上代码
import logging
# 初始化日志对象
logging.basicConfig(# 日志级别level = logging.INFO,# 日志格式# 时间、代码所在文件名、代码行号、日志级别名字、日志信息format = '%(asctime)s %(filename)s[line:%(lineno)d] %(levelname)s %(message)s',# 打印日志的时间datefmt = '%a, %d %b %Y %H:%M:%S',# 日志文件存放的目录(目录必须存在)及日志文件名filename = 'd:/report.log',# 打开日志文件的方式filemode = 'w'
)
# 定义类存储日志信息
def get_logger(filename, print2screen=True):# 创建一个loggerlogger = logging.getLogger(filename)# 设置logger级别为INFOlogger.setLevel(logging.INFO)# 将日志信息输出到磁盘文件上fh = logging.FileHandler(filename)# 输出到file的logging等级的开关fh.setLevel(logging.INFO)#日志信息会输出到指定的stream中,如果stream为空则默认输出到sys.stderrch = logging.StreamHandler()# 输出到sys.stderr的logging等级的开关ch.setLevel(logging.INFO)# 定义handler的输出格式formatter = logging.Formatter('[%(asctime)s][%(thread)d][%(filename)s][line: %(lineno)d][%(levelname)s] >> %(message)s')fh.setFormatter(formatter)ch.setFormatter(formatter)# 将logger添加到handler里面logger.addHandler(fh)# 如果需要输出到控制台,就将ch加入,并返回if print2screen:logger.addHandler(ch)return logger
logger = get_logger(os.path.join(args.save_path, 'train.log'))
logger.info('Building models')
argparse及logging的相关用法相关推荐
- slf4j log4j logback关系详解和相关用法 【by Sinte-Beuve】
slf4j log4j logback关系详解和相关用法 slf4j log4j logback的关系 The Simple Logging Facade for Java是什么? log4j和log ...
- Java中Date各种相关用法
Java中Date各种相关用法 本文主要介绍Java中Date各种相关用法. AD: Java中Date各种相关用法(一) 1.计算某一月份的最大天数 Java代码 Calendar time=C ...
- 【c++】14.编译proto和proto相关用法
编译proto和proto相关用法 关于proto相关的知识可以参考系列博客 https://blog.csdn.net/daaikuaichuan/category_9869251.html [xx ...
- $.extend 的相关用法
$.extend 的相关用法 1.1 $.extend(result,item1,item2-..) 将所有的参数项都合并result中,返回result,会破坏result的结构. 1.2 $.ex ...
- boost::mpl::always相关用法的测试程序
boost::mpl::always相关用法的测试程序 实现功能 C++实现代码 实现功能 boost::mpl::always相关用法的测试程序 C++实现代码 #include <boost ...
- boost::mpl::advance相关用法的测试程序
boost::mpl::advance相关用法的测试程序 实现功能 C++实现代码 实现功能 boost::mpl::advance相关用法的测试程序 C++实现代码 #include <boo ...
- boost::mpl::aux::template_arity相关用法的测试程序
boost::mpl::aux::template_arity相关用法的测试程序 实现功能 C++实现代码 实现功能 boost::mpl::aux::template_arity相关用法的测试程序 ...
- boost::mpl::aux::msvc_is_class相关用法的测试程序
boost::mpl::aux::msvc_is_class相关用法的测试程序 实现功能 C++实现代码 实现功能 boost::mpl::aux::msvc_is_class相关用法的测试程序 C+ ...
- boost::mpl::aux::largest_int相关用法的测试程序
boost::mpl::aux::largest_int相关用法的测试程序 实现功能 C++实现代码 实现功能 boost::mpl::aux::largest_int相关用法的测试程序 C++实现代 ...
- boost::mpl::inherit_linearly相关用法的测试程序
boost::mpl::inherit_linearly相关用法的测试程序 实现功能 C++实现代码 实现功能 boost::mpl::inherit_linearly相关用法的测试程序 C++实现代 ...
最新文章
- pytorch使用gpu就是这么简单
- setcookie无效
- torch yolov3梯度发散
- sigmoid函数解决溢出_梯度消失和梯度爆炸及解决方法
- 网页游戏怎么修改数据_一周网页游戏开服数据总结(9.1-9.7)
- 《高效程序员的45个习惯》-之二
- 特定领域因果事件图谱构建项目
- 你应该了解的python 垃圾回收机制
- HelloDjango 第 04 篇:Django 迁移、操作数据库
- Linux安装python环境方法
- python可视化网页设计_python可视化工具
- 3dmax 2014加载panda3d插件失败
- java-net-php-python-java宿舍管理系统计算机毕业设计程序
- ubuntu安装与卸载deb文件
- 98% after emitting CopyPlugin问题
- Linux学习134 Unit 5
- 苹果CMS、海洋CMS自动定时采集-可采集任意自定义指定资源
- 第一章-算法在计算中的作用
- APP开发后如何运营?
- FCN(Fully Convolutional Networks for Semantic Segmentation)全文翻译
热门文章
- java day07【Scanner类、Random类、ArrayList 类】
- Cesium.js学习第二天(立方体)
- cobbler实现自动安装
- 遍历josn的三种方式
- 【15】一切都是对象
- C++笔记之CopyFile和MoveFile的使用
- We FALL ASleep At Night, We Do REST Right
- c#类的多态和文件流复习
- http://www.jb51.net/article/51934.htm
- Android自定义开机和关机动画