jupyter notebook使用argparse传入list参数
jupyter notebook
其实是可以使用 argparse
来调用参数的,只要把参数转为list
即可。
不能在jupyter notebook
运行的代码(在shell里运行):parser.parse_args()
能在jupyter notebook
运行的代码:parser.parse_args(arg_list)
只需要两步:
第一步. 创建一个简单的配置文件:config.ini
[train] batch_size=32 num_layers=2
第二步. 用configparser类来加载这个文件
用configparser类来加载这个文件,并将配置转换为list类型,再将list传入
parser.parse_args()
,即可无缝加入到argparse类里面。
下面是完整代码:
import argparse import configparser if __name__ == "__main__": jupyter = True # 如果不在jupyter notebook中,就改为False. parser = argparse.ArgumentParser(description='test') parser.add_argument('--batch_size', type=int, default=64) parser.add_argument('--num_layers', type=int, default=2) arg_list = None if jupyter: # load from config.ini,如果是用jupyter, 就转换配置为list再传入argparse config = configparser.ConfigParser() config.read('config.ini') # 其实是个字典: # print(config['train']['batch_size']) arg_list = [] for k, v in config['train'].items(): arg_list.append("--"+k) arg_list.append(v) # 如果不是用jupyter,arg_list就是None,和用命令行执行没有区别。 args = parser.parse_args(arg_list) print('args:', args)
以上代码可以放到jupyter文件里面直接执行或者是放到python文件中用命令行执行,如:python main.py --batch_size=200
到此这篇关于jupyter notebook
使用argparse
传入list参数的文章就介绍到这了,更多相关jupyter notebook使用argparse 内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
Python-typing: 类型标注与支持 Any类型详解
这篇文章主要介绍了Python-typing: 类型标注与支持 Any类型详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2021-05-05Python pyinotify模块实现对文档的实时监控功能方法
今天小编就为大家分享一篇Python pyinotify模块实现对文档的实时监控功能方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2018-10-10asyncio 的 coroutine对象 与 Future对象使用指南
asyncio是Python 3.4版本引入的标准库,直接内置了对异步IO的支持。asyncio的编程模型就是一个消息循环。今天我们就来详细讨论下asyncio 中的 coroutine 与 Future对象2016-09-09
最新评论