argparse模块用法简要总结

【argparse模块详解】 argparse模块使用方法案例详解 阅读详情

argparse简要用法总结

argparse 是python自带的命令行参数解析包,可以用来方便地读取命令行参数,当你的代码需要频繁地修改参数的时候,使用这个工具可以将参数和代码分离开来,让你的代码更简洁,适用范围更广。
argparse使用比较简单,常用的功能可能较快地实现出来,下面我分几个步骤,以Python3为例,简要讲述argparse的用法。

1.基本框架

下面是使用argparse从命令行获取用户名,然后打印’Hello ‘+ 用户名,假设python文件名为test.py

# file-name:test.py
import argparse

def get_parser():
    parser = argparse.ArgumentParser(description="Demo of argparse")
    parser.add_argument('--name', default='World')
    
    return parser

if __name__ == '__main__':
    parser = get_parser()
    args = parser.parse_args()
    name = args.name
    print('Hello {}'.format(name))

在命令行执行如下命令:

$ python test.py --name Zhou
Hello Zhou

上面的代码段中,我们显示引入了argparse包,然后通过argparse.ArgumentParser函数生成argparse对象,其中这个函数的description函数表示在命令行显示帮助信息的时候,这个程序的描述信息。之后我们通过对象的add_argument函数来增加参数。这里我们只增加了一个–name的参数,然后后面的default参数表示如果没提供参数,我们默认采用的值。即如果像下面这样执行命令:

$ python test.py 

则输出是:

$ Hello World 

最后我们通过argpaser对象的parser_args函数来获取所有参数args,然后通过args.name的方式得到我们设置的–name参数的值,可以看到这里argparse默认的参数名就是–name形式里面–后面的字符串。整个流程就是这样,下面我们详细讲解add_argument函数的一些最常用的参数,使得你看完这个教程之后,能完成科研和工作中的大部分命令解析任务。

2. default:没有设置值情况下的默认参数

如同上例中展示的,default表示命令行没有设置该参数的时候,程序中用什么值来代替。

3. required: 表示这个参数是否一定需要设置

如果设置了required=True,则在实际运行的时候不设置该参数将报错:

...
parser.add_argument('-name', required=True)
...

则运行下面的命令会报错:

$ python test.py
usage: test.py [-h] --name NAME
print_name.py: error: argument --name is required
4. type:参数类型

默认的参数类型是str类型,如果你的程序需要一个整数或者布尔型参数,你需要设置type=int或type=bool,下面是一个打印平方的例子:

#name: square.py
import argparse

def get_parser():
    parser = argparse.ArgumentParser(
        description='Calculate square of a given number')
    parser.add_argument('-number', type=int)

    return parser

if __name__ == '__main__':
    parser = get_parser()
    args = parser.parse_args()
    res = args.number ** 2
    print('square of {} is {}'.format(args.number, res))

执行:

$ python square.py -number 5
square of 5 is 25
5. choices:参数值只能从几个选项里面选择

如下面的代码:

# filename: choices.py
import argparse

def get_parser():
    parser = argparse.ArgumentParser(
        description='choices demo')
    parser.add_argument('-arch', required=True, choices=['alexnet', 'vgg'])

    return parser

if __name__ == '__main__':
    parser = get_parser()
    args = parser.parse_args()
    print('the arch of CNN is '.format(args.arch))

如果像下面这样执行会报错:

$ python choices.py -arch resnet
usage: choices.py [-h] -arch {alexnet,vgg}
choices.py: error: argument -arch: invalid choice: 'resnet' (choose from 'alexnet', 'vgg')
6. help:指定参数的说明信息

在现实帮助信息的时候,help参数的值可以给使用工具的人提供该参数是用来设置什么的说明,对于大型的项目,help参数和很有必要的,不然使用者不太明白每个参数的含义,增大了使用难度。
下面是个例子:

# file-name: help.py
import argparse

def get_parser():
    parser = argparse.ArgumentParser(
        description='help demo')
    parser.add_argument('-arch', required=True, choices=['alexnet', 'vgg'],
        help='the architecture of CNN, at this time we only support alexnet and vgg.')

    return parser


if __name__ == '__main__':
    parser = get_parser()
    args = parser.parse_args()
    print('the arch of CNN is '.format(args.arch))

在命令行加-h或–help参数运行该命令,获取帮助信息的时候,结果如下:

$ python help.py -h
usage: help.py [-h] -arch {alexnet,vgg}

choices demo

optional arguments:
  -h, --help           show this help message and exit
  -arch {alexnet,vgg}  the architecture of CNN, at this time we only support
                       alexnet and vgg.
7. dest:设置参数在代码中的变量名

argparse默认的变量名是–或-后面的字符串,但是你也可以通过dest=xxx来设置参数的变量名,然后在代码中用args.xxx来获取参数的值。

8. nargs: 设置参数在使用可以提供的个数

使用方式如下:

parser.add_argument('-name', nargs=x)

其中x的候选值和含义如下:

值 含义
x 参

值含义
x参数的绝对个数(例如:5)
‘?’0或者1个参数
‘*’0或所有参数
‘+’所有,并且至少一个参数

如下例子:

# file-name: nargs.py
import argparse

def get_parser():
    parser = argparse.ArgumentParser(
        description='nargs demo')
    parser.add_argument('-name', required=True, nargs='+')
    
    return parser


if __name__ == '__main__':
    parser = get_parser()
    args = parser.parse_args()
    names = ', '.join(args.name)
    print('Hello to {}'.format(names))

执行命令和结果如下:

$ python nargs.py -name A B C
Hello to A, B, C
9. action=‘store_true’

上一个用法中-v必须指定参数值,否则就会报错,有没有像-h那样,不需要指定参数值的呢,答案是有,通过定义参数时指定action="store_true"即可,用法如下

#!/usr/bin/env python
# encoding: utf-8
#filename:test.py

import argparse


parser = argparse.ArgumentParser()
parser.add_argument("-v", "--verbose", help="increase output verbosity",
                    action="store_true")
args = parser.parse_args()
print(args.verbose)
if args.verbose:
        print("verbosity turned on")

在命令行输入:

$ python test.py

输出:

False

在命令行输入:

$ python test.py -v

输出:

True
verbosity turned on

说明action 就像是一个开关,控制参数v的输入。

10. 程序用法帮助

介绍了为每个参数定义帮助文档,那么给整个程序定义帮助文档该怎么进行呢?
通过argparse.ArgumentParser(description=“calculate X to the power of Y”)即可
修改test.py内容如下:

#!/usr/bin/env python
# encoding: utf-8
#filename:test.py

import argparse

parser = argparse.ArgumentParser(description="calculate X to the power of Y")
group = parser.add_mutually_exclusive_group()
group.add_argument("-v", "--verbose", action="store_true")
group.add_argument("-q", "--question", action="store_true")
parser.add_argument("x", type=int, help="the base")
parser.add_argument("y", type=int, help="the exponent")
args = parser.parse_args()
answer = args.x**args.y

if args.quiet:
    print (answer)
elif args.verbose:
    print ("{} to the power {} equals {}".format(args.x, args.y, answer))
else:
    print ("{}^{} == {}".format(args.x, args.y, answer))

在命令输入:

$ python test.py -h
usage: prog.py [-h] [-v | -q] x y

calculate X to the power of Y

positional arguments:
  x              the base
  y              the exponent

optional arguments:
  -h, --help     show this help message and exit
  -v, --verbose
  -q, --question
11. 互斥参数

在上个例子中介绍了互斥的参数

group = parser.add_mutually_exclusive_group()
group.add_argument("-v", "--verbose", action="store_true")
group.add_argument("-q", "--question", action="store_true")

第一行定义了一个互斥组,第二、三行在互斥组中添加了-v和-q两个参数,用上个例子中的程序进行如下测试:

 $ python test.py 4 2      
4^2 == 16
 $ python test.py  4 2 -v
4 to the power 2 equals 16
 $ python test.py  4 2 -q
16
 $ python test.py  4 2 -q -v
 usage: test.py [-h] [-v | -q] x y
 test.py: error: argument -v/--verbose: not allowed with argument -q/--question

可以看出,-q和-v不出现,或仅出现一个都可以,同时出现就会报错,可定义多个互斥组。

参考链接:
https://www.jianshu.com/p/fef2d215b91d.
http://vra.github.io/2017/12/02/argparse-usage/.

【Python】argparse模块 argparse模块是Python标准库的一部分,旨在简化命令行接口的创建过程。它允许开发者定义程序接受哪些命令行参数,并自动解析这些参数,同时提供帮助信息和错误处理。以下是关于argparse模块更深入的理解,包括其基本用法、特性以及一些高级功能。 阅读详情

相关推荐

Python实战:argparse模块的详细使用

argparse 是 Python 中功能强大且易于使用的命令行参数解析模块。通过掌握其基本用法和进阶技巧,可以轻松构建用户友好的命令行界面,提升程序的易用性和可维护性。

数据知道的博客 1万+

argparse模块使用方法

argparse模块使用方法

Obolicaca的博客 2150

AlphaFold2算法详解

正文:https://www.nature.com/articles/s41586-021-03819-2 补充文件:https://static-content.springer.com/esm/art%3A10.1038%2Fs41586-021-03819-2/MediaObjects/41586_2021_3819_MOESM1_ESM.pdfhttps://static-content.springer.com/esm/art%3A10.1038%2Fs41586-021-03819-2/Med

Daisy4的博客 1万+

argparse模块(详解)

argparse 是 Python 标准库中用于解析命令行参数的模块。提供了一种简单而灵活的方式来处理命令行输入,并帮助用户构建具有参数选项和帮助信息的命令行界面。

📷 图像处理践行者 | 传统算法 · 深度学习 · 多模态 | 分享实战经验与技术洞见,探索从像素到智能的无限可能。 5812

十大排序算法详解(一)冒泡排序、选择排序、插入排序、快速排序、希尔排序

冒泡排序、选择排序、插入排序、快速排序、希尔排序

HK的博客 18万+

SAP S4 MM模块自动记账全流程解析:从评估范围到科目分组的实战配置

本文深入解析SAP S4 MM模块自动记账的全流程,从核心概念评估范围与评估控制入手,详细阐述了评估类、科目分组等关键配置的逻辑关系。通过实战配置步骤,指导如何建立从物料移动(如收货、发料)到自动生成准确财务凭证的完整体系,确保库存价值与总账实时同步,为企业构建可靠的财务业务一体化基石。

weixin_29313547的博客 425

argparse模块的用法

该模块可以轻松编写用户友好的命令行界面。该程序定义了它需要的参数, 并将弄清楚如何解析它们。 当用户给程序提供无效参数时,该模块还会自动生成帮助和使用消息并发出错误。

Monkeymon246的博客 1620

基于稀疏表示字典学习的图像超分辨率-杨建超论文解析

文章:《Image Super-Resolution via Sparse Representation》 作者:杨建超 信号稀疏的定义: 令字典D的原子个数M,信号维度为N,则有以下三种关系: M = N时,D为完备的; M > N时,D为冗余的; M>>N时, D为过完备的。 图解如下: 借鉴了压缩感知的思想,通过对大量低分辨率图像和高分辨...

ycc18829026593的博客 7637

python — argparse模块,及Pycharm传递参数给argparse

python之argparse模块 argparse 模块可以编写用户友好的命令行接口。 程序定义它需要的参数,然后 argparse 将弄清如何从 sys.argv 解析出那些参数。 argparse 模块还会自动生成帮助和使用手册,并在用户给程序传入无效参数时报出错误信息。 一、argparse用法 主要有三个步骤: 创建 ArgumentParser() 对象 调用 add_argumen...

pentiumCM的博客 6333

关于RT-Thread中PWM无法正常输出的学习

按照官方的PWM配置,并没有输出PWM,网上有比较多的办法,试了很多,有些还是不能实现输出,这里做个记录。记录自己完成PWM输出的过程,以及修改的地方。 关于STM32CubeMX配置就不多说了,网上有很多。 首先必定是按照流程来,一定一定按照流程来!!! 需要注意的是加上通道数!!!! 这是流程上没有的,也是RTT的一点小BUG吧 配上board.c中添加的代码,我用的是PA2定时2的通道3,需要使用的朋友修改对应定时器和GPIO! void HAL_TIM_Base_MspInit(TIM_Han

weixin_42566346的博客 3556

王道考研操作系统笔记(第一章)附:王道考研408所有PPT和思维导图

学习感想 别人的笔记对你的学习基本上没有用处,容易培养人的惰性,如需ppt和思维导图请拉到最后,有github链接 记笔记并不是一件浪费时间的事情,还有利于多次学习 真心希望大家在学习的过程中记笔记 操作系统 第一章 计算机系统概述 1.1 操作系统 1.1.1 操作系统的概念和功能 概念 操作系统(Operating System, OS)是指控制和管理整个计算机系统的硬件和软件资源,并合理地组织调度计算机的工作和资源的分配;以提供给用户和其他软件方便的接口和环境;它是计算机系统中最基本的系统软

qq_41732756的博客 1万+

argparse模块

本文目录argparse模块一、基本用法二、几个常用选项1. 可选参数(--)与默认值(default)2. action argparse模块 argparse模块是python的一个命令行解析包,可以直接让我们在命令行向程序中传入参数和修改参数,argparse模块内置于python中,不需要另外安装 试想在一个project中,我们有5个参数(p1,p2,p3,p4,p5),有两个py文件,其中py1用到了(1,2,3,4),py2用到了(1,2,3,5)但是在py1和py2中我们的参数p3的值不

芒果干的博客 3973

FFDNet-pytorch版本代码训练教程

该文章为FFDNet-pytorch版本代码训练教程,抓紧订阅学习!尽早入门发论文哦!

假技术Po主 1507

Argparse模块入门

简介 Argparse是标准库提供的命令行解析模块,它基于废弃模块optparse,类似模块还有getopt。 相关概念 linux用户应该对以下4个命令不陌生,这4个命令说明了ls命令4种参数用法。 ls ls python ls -l ls --help 第一个命令不带参数 第二个命令中的python是位置参数,命令如何处理位置参数完全取决于参数所处的位置,类似的如cp命令基本用法中的第一个...

mighty13的专栏 1万+

【OpenClaw从入门到精通】第03篇:吃透Gateway/Skills/ClawHub核心概念(2026实测+避坑)

本文针对OpenClaw新手易混淆的核心概念痛点,以通俗类比+实操演示拆解OpenClaw核心、Gateway、Skills、ClawHub四大组件。通过“数字员工团队”类比明确各组件定位:OpenClaw核心是“老板”(调度中心)、Gateway是“前台+后勤”(后台进程)、Skills是“专业员工”(功能插件)、ClawHub是“人才市场”(技能商店)。补充版本更名史、技能加载优先级、ClawHub与GitHub区别等关键细节,结合“AI融资新闻查询并邮件推送”虚拟案例演示组件协同流程,梳理5个高频认知

专注于人工智能、软件开发、工控自动化、工厂数字化及智能化等领域,希望和大家共同进步! 5047

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

python之argparse模块常见用法包含实例(超详细)

相信很多刚开始学习深度学习算法代码的小伙伴,在一开始总会遇到关于argparse模块的代码,网上关于这方面的文章有很多但新手入门往往不是那么容易。本文从一个计算圆柱体体积的实例出发,帮助大家理解关于argparse模块的一些常见用法。 点击查看官方参考文档 1.介绍 argparse模块是命令行选项、参数和子命令解析器。可以让人轻松编写用户友好的命令行接口。适用于代码需要频繁地修改参数的情况。 先看下面一段没有使用argparse的代码 import math # 为了获取π def cylinder

RudeTomatoes的博客 7万+

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

argparse 模块详解

argparse是一个用来解析命令行参数的 Python 库,它是 Python 标准库的一部分。基于 python 2.7 的stdlib 代码。argparse模块使编写用户友好的命令行界面变得容易。程序定义了所需的参数,而argparse将找出如何从sys.argv(命令行)中解析这些参数。argparse模块还会自动生成帮助和使用消息,并在用户为程序提供无效参数时发出错误。

craftsman2020的博客 8710

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

python中argparse模块实践

python的标准库模块argparse实践

lixiao2112924629的博客 1493

argparse模块用法

本文详细介绍了Python中argparse模块的使用方法,主要包括参数解析的基础设置、参数类型(位置参数和可选参数)、参数属性(类型、默认值、取值范围等)以及特殊功能(如store_true动作、多值参数等)。文章提供了完整的代码示例,展示了如何创建解析器、添加参数定义并解析使用参数,特别说明了--log_all这类标志参数在分布式训练中的典型应用场景。该模块支持自动生成帮助信息、类型验证和灵活的参数设计,是处理命令行参数的强大工具。

echo的博客 553

argparse模块的基本用法

argparse模块的基本用法argparse简介例子代码分析1 创建参数解析器2 添加参数3 解析参数4 -h帮助参考链接 argparse简介 argparse是一个用来解析命令行参数的 Python 库。通过该模块可以使用户便捷地在命令行运行程序的同时传入简单的参数。 为了使用户体验更加友好,argparse还提供了帮助信息,通过-h或--help可以显示该程序的描述信息、每个参数的名称以及帮助信息等等。 此外,当用户为程序提供了无效参数时,该模块还会自动生成帮助和使用情况消息并发出错误。 例子 以

HaotianYan的博客 434

【python模块】Argparse

`argparse` 模块是 Python 标准库中的一个用于编写用户友好的命令行接口(CLI)的模块。它允许程序定义它所需要的命令行参数,然后 `argparse` 会自动从 `sys.argv` 解析出那些参数。

LongL_GuYu的博客 1241

Python之 import argparse模块

Python之 import argparse模块 argparse 是 Python 内置的一个用于命令项选项与参数解析的模块,通过在程序中定义好我们需要的参数,argparse 将会从 sys.argv 中解析出这些参数,并自动生成帮助和使用信息。 argparse 使用 我们先来看一个简单示例。主要有三个步骤 1、创建 ArgumentParser() 对象 2、调用 add_argument() 方法添加参数 3、使用 parse_args() 解析添加的参数 import argparse p

happy_wealthy的博客 1万+

【代码笔记】Python的argparse模块基本用法总结

Python中argparse模块基本用法总结

记录学习^_^,欢迎交流~ 2241

python argparse模块

一、模块介绍 argparse模块是python内置的一个模块,用于编写命令工具和参数解析,可以轻松编写用户友好的命令行接口。通过程序定义需要的参数,然后argparse将弄清如何从sys.argv解析出这些参数。argparse模块还会自动生成帮助和使用手册,并在用户给程序传入无效参数时报出错误信息。 二、使用流程 导入argparse模块 创建ArgmentParser()对象 调用add_argument()方法添加参数 使用parse_args()解析添加的参数 ...

VinWqx的博客 643

python Argparse模块的使用

参考: Argparse Tutorial:https://docs.python.org/2.7/howto/argparse.html#id1 argparse - Parser for command-line options, arguments and sub-commands:https://docs.python.org/2.7/library/argparse.html?hig

u012005313的专栏 2万+
上一篇: openCV使用
下一篇: TensorFlow 2.0简要教程(一)
weekdayh
博客等级 码龄8年 9粉丝 15原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值