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模块的主体,进行以下三项工作:

  1. 为程序提供记录日志的接口
  2. 判断日志所处级别,并判断是否要过滤
  3. 根据其日志级别将该条日志分发给不同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的相关用法相关推荐

  1. slf4j log4j logback关系详解和相关用法 【by Sinte-Beuve】

    slf4j log4j logback关系详解和相关用法 slf4j log4j logback的关系 The Simple Logging Facade for Java是什么? log4j和log ...

  2. Java中Date各种相关用法

    Java中Date各种相关用法 本文主要介绍Java中Date各种相关用法. AD:   Java中Date各种相关用法(一) 1.计算某一月份的最大天数 Java代码 Calendar time=C ...

  3. 【c++】14.编译proto和proto相关用法

    编译proto和proto相关用法 关于proto相关的知识可以参考系列博客 https://blog.csdn.net/daaikuaichuan/category_9869251.html [xx ...

  4. $.extend 的相关用法

    $.extend 的相关用法 1.1 $.extend(result,item1,item2-..) 将所有的参数项都合并result中,返回result,会破坏result的结构. 1.2 $.ex ...

  5. boost::mpl::always相关用法的测试程序

    boost::mpl::always相关用法的测试程序 实现功能 C++实现代码 实现功能 boost::mpl::always相关用法的测试程序 C++实现代码 #include <boost ...

  6. boost::mpl::advance相关用法的测试程序

    boost::mpl::advance相关用法的测试程序 实现功能 C++实现代码 实现功能 boost::mpl::advance相关用法的测试程序 C++实现代码 #include <boo ...

  7. boost::mpl::aux::template_arity相关用法的测试程序

    boost::mpl::aux::template_arity相关用法的测试程序 实现功能 C++实现代码 实现功能 boost::mpl::aux::template_arity相关用法的测试程序 ...

  8. boost::mpl::aux::msvc_is_class相关用法的测试程序

    boost::mpl::aux::msvc_is_class相关用法的测试程序 实现功能 C++实现代码 实现功能 boost::mpl::aux::msvc_is_class相关用法的测试程序 C+ ...

  9. boost::mpl::aux::largest_int相关用法的测试程序

    boost::mpl::aux::largest_int相关用法的测试程序 实现功能 C++实现代码 实现功能 boost::mpl::aux::largest_int相关用法的测试程序 C++实现代 ...

  10. boost::mpl::inherit_linearly相关用法的测试程序

    boost::mpl::inherit_linearly相关用法的测试程序 实现功能 C++实现代码 实现功能 boost::mpl::inherit_linearly相关用法的测试程序 C++实现代 ...

最新文章

  1. pytorch使用gpu就是这么简单
  2. setcookie无效
  3. torch yolov3梯度发散
  4. sigmoid函数解决溢出_梯度消失和梯度爆炸及解决方法
  5. 网页游戏怎么修改数据_一周网页游戏开服数据总结(9.1-9.7)
  6. 《高效程序员的45个习惯》-之二
  7. 特定领域因果事件图谱构建项目
  8. 你应该了解的python 垃圾回收机制
  9. HelloDjango 第 04 篇:Django 迁移、操作数据库
  10. Linux安装python环境方法
  11. python可视化网页设计_python可视化工具
  12. 3dmax 2014加载panda3d插件失败
  13. java-net-php-python-java宿舍管理系统计算机毕业设计程序
  14. ubuntu安装与卸载deb文件
  15. 98% after emitting CopyPlugin问题
  16. Linux学习134 Unit 5
  17. 苹果CMS、海洋CMS自动定时采集-可采集任意自定义指定资源
  18. 第一章-算法在计算中的作用
  19. APP开发后如何运营?
  20. FCN(Fully Convolutional Networks for Semantic Segmentation)全文翻译

热门文章

  1. java day07【Scanner类、Random类、ArrayList 类】
  2. Cesium.js学习第二天(立方体)
  3. cobbler实现自动安装
  4. 遍历josn的三种方式
  5. 【15】一切都是对象
  6. C++笔记之CopyFile和MoveFile的使用
  7. We FALL ASleep At Night, We Do REST Right
  8. c#类的多态和文件流复习
  9. http://www.jb51.net/article/51934.htm
  10. Android自定义开机和关机动画