jupyter notebook使用argparse传入list参数

目录
  • 第一步. 创建一个简单的配置文件:config.ini
  • 第二步. 用configparser类来加载这个文件

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 内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Jupyter Notebook内使用argparse报错的解决方案

    Jupyter Notebook内使用argparse报错 在github上下载了代码来学习时,发现将其直接copy到jupyter notebook里时总是出现如下报错: 在翻阅了大量博客后,发现关键问题出在以下语句: args = parser.parse_args() 按照博文的提示,原以为将其改成如下形式就可以: args = parser.parse_args(args[]) 但仍然报错: 不过好在互联网的广阔,让我又翻到了两个解决方案,ps:第二个解决方案在打印args的时候不会出现

  • jupyter notebook使用argparse传入list参数

    目录 第一步. 创建一个简单的配置文件:config.ini 第二步. 用configparser类来加载这个文件 jupyter notebook其实是可以使用 argparse来调用参数的,只要把参数转为list即可.不能在jupyter notebook运行的代码(在shell里运行):parser.parse_args()能在jupyter notebook运行的代码:parser.parse_args(arg_list) 只需要两步: 第一步. 创建一个简单的配置文件:config.i

  • python argparse传入布尔参数false不生效的解决

    跑代码时,在命令行给python程序传入bool参数,但无法传入False,无论传入True还是False,程序里面都是True.下面是代码: parser.add_argument("--preprocess", type=bool, default=True, help='run prepare_data or not') 高端解决方案 使用可选参数store_true,将上述代码改为: parse.add_argument("--preprocess", ac

  • 解决Jupyter Notebook使用parser.parse_args出现错误问题

    问题: 在Jupyter Notebook中使用args传递参数时出现错误: 原始代码:args = parser.parse_args() usage: ipykernel_launcher.py [-h] [--x_dim XDIM] [--h_dim HDIM] [--z_dim ZDIM] [--ratio RATIO] [--seed SEED] ipykernel_launcher.py: error: unrecognized arguments: -f C:\Users\MSI-

  • jupyter notebook 参数传递给shell命令行实例

    我就废话不多说了,大家看代码吧! dataset = ["el","tv"] model = ["model"] stride = [32,64,256,512] for m in model: for d in dataset: for s in stride: print(f"{m} {d} {s}") c = f"tail -n3 N{m}_hp_emb{s}_adam_{d}_log_1.txt"

  • jupyter notebook参数化运行python方式

    Updates (2019.8.14 19:53)吃饭前用这个方法实战了一下,吃完回来一看好像不太行:跑完一组参数之后,到跑下一组参数时好像没有释放之占用的 GPU,于是 notebook 上的结果,后面好几条都报错说 cuda out of memory. 现在改成:将 notebook 中的代码写在一个 python 文件中,然后用命令行运行这个文件,比如: # autorun.py import os # print(os.getcwd()) over = [ # 之前手工改参数跑完的参数

  • Ubuntu安装Jupyter Notebook教程

    一.Jupyter介绍 Jupyter Notebook是一个交互式笔记本,支持运行40多种编程语言.Jupyter Notebook 的本质是一个 Web 应用程序,便于创建和共享文学化程序文档,支持实时代码,数学方程,可视化和 markdown.用途包括:数据清理和转换,数值模拟,统计建模,机器学习等等. 二.安装步骤 环境:Docker(17.04.0-ce).镜像Ubuntu(16.04.3) 1. 更新软件列表 root@787c084a44e4:~# apt-get update 2

  • 在Python中画图(基于Jupyter notebook的魔法函数)

    这篇文章主要介绍了在Python中画图(基于Jupyter notebook的魔法函数),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 先展示一段相关的代码: #we test the accuracy of knn and find the k which makes the biggest accuracy k_range=list(range(1,26))#[1,25] scores=[] for k in k_range: knn=KN

  • 调整Jupyter notebook的启动目录操作

    1. 在控制台输入以下命令,检查Jupyter notebook的安装目录 jupyter notebook --generate-config 如: C:\Users\Administrator>jupyter notebook --generate-config 例如得到配置文件的地址为: C:\Users\Administrator\.jupyter\jupyter_notebook_config.py with default config? [y/N]n # 选择不替换为默认配置 2.

  • 服务器端jupyter notebook映射到本地浏览器的操作

    1.远程服务器上安装jupyter notebook(配置jupyter_notebook_config.py文件) sudo pip install jupyter 2.远程服务器(8890端口,没有下面括号中内容默认在服务器8888端口打开jupyter notebook,下面将使用默认端口8888)启动jupyter notebook jupyter notebook (--no-browser --port=8890 --ip=127.0.0.1 --allow-root) 3.将远程j

随机推荐