python命令行参数传递

本文介绍python的两种参数传递方式,第1种为sys的参数传递,第2种为argparse的参数传递

1. 使用syssys.argv来获取命令行参数

import sys
print (sys.argv)
python debug.py para1 para2
['debug.py', 'para1', 'para2']

可以看到传入了参数,要使用具体参数的时候得我们自己去解析、识别

2. 使用parser.add_argument()方法传递参数

parser.add_argument('--para--name', type=int, default=72, help='the name of parameter.')

其中para--name为参数名,type为其类型,default为默认值

在不知使用方法时可用 -h查看help说明

使用例子如下:

import argparse
parser = argparse.ArgumentParser(description='para transfer')
parser.add_argument('--para1', action='store_true', default=False, help='para1 -> bool type.')
parser.add_argument('--para2', type=int, default=10, help='para2 -> int type.')
parser.add_argument('--para3', type=str, default="hello", help='para3 -> str type.')
args = parser.parse_args()
print(args)

命令行参数传递

  • 使用-h查看帮助
python debug.py  -h
usage: debug.py [-h] [--para1] [--para2 PARA2] [--para3 PARA3]para transferoptional arguments:-h, --help     show this help message and exit--para1        para1 -> bool type.--para2 PARA2  para2 -> int type.--para3 PARA3  para3 -> str type.
  • 使用--具体参数名传递参数
python debug.py  --para2 100
Namespace(para1=False, para2=100, para3='hello')

可以看到参数2传值成功

  • action='store_true'的说明
    无传参时为默认,有传参时为True
python debug.py  --para1
Namespace(para1=True, para2=10, para3='hello')

可以看到参数1有传递时为True

在使用具体参数时只需args.参数名即可,如:args.para1

python命令行传递参数相关推荐

  1. python命令行输入参数_Python命令行参数处理

    sys模块 sys模块代表了Python解释器,主要用于获取和Python解释器相关的信息,其中 sys.argv 可以获取命令行参数 在Python交互式解释器中可以先导入sys模块 import ...

  2. Java方法01 方法(函数)定义、调用、值传递、重载、命令行传递参数

    Java 方法的定义.调用.值传递.重载.命令行传递参数 1. 什么是方法? 2. 方法的定义和调用 3. 值传递和引用传递 4. 方法的重载 5. 命令行传递参数 6. 可变参数(输入参数的数量不确 ...

  3. python命令行输入参数_Python3.x那些事儿:[3]命令行参数传递

    用命令行调用python脚本的时候,如果想往脚本中传递参数的时候,参数会被python解释器接受转化为一系列的字符串,放在sys模块中的argv列表中,因此可以使用argv[0]来引用第一个参数,以此 ...

  4. php命令行传递参数,PHP命令行传递参数

    在以非命令行模式运行PHP的时候,我们可以通过$_GET.$_POST.$_REQUEST来接受get或是post参数,但是以命令行方式运行的话,怎么传递参数以接受参数呢?关于命令行的特点,可以直接看 ...

  5. python 命令行输入参数有误_python – 错误:参数太少,必须提供命令行包规范或–file...

    当我运行conda命令来创建tensorflow环境时,它显示以下错误消息: (Anaconda3_411) C:\development\anaconda\Anaconda3_411>cond ...

  6. python 命令行参数-Python命令行参数处理

    sys模块 sys模块代表了Python解释器,主要用于获取和Python解释器相关的信息,其中 sys.argv 可以获取命令行参数 在Python交互式解释器中可以先导入sys模块 import ...

  7. python 命令行参数-Python3之命令行参数处理

    toc sys模块 sys模块代表了Python解释器,主要用于获取和Python解释器相关的信息,其中 sys.argv 可以获取命令行参数 在Python交互式解释器中可以先导入sys模块 imp ...

  8. Python高阶——argparse(命令行与参数解析)

    文章目录 1.前言 2.创建脚本 3.导入解析模块 4.初始化.添加参数.解析参数 4.运行脚本 5.通过脚本实现计算功能 1.前言 本节,将讲解如何通过命令行传递参数.具体以代码形式讲解,保您一看就 ...

  9. tf.app.flags 定义命令行可选参数

      tensorflow 定义了tf.app.flags,它是用来支持接受命令行传递参数,相当于接受argv,其中tf.app.flags.DEFINE_xx()用来添加命令行的optional ar ...

最新文章

  1. 18.11 LVS DR模式搭建 18.12 keepalived + LVS
  2. lambda :: -_无需再忙了:Lambda-S3缩略图,由SLAppForge Sigma钉牢!
  3. 数据库以及表的基本操作
  4. 消除拖延的方法_如何消灭拖延症,并彻底消除想法
  5. 想买一辆别克GL8用做家庭用车,跑长途自驾游可以吗?
  6. 软考:项目中的常见问题
  7. get和post方式请求数据,jsonp
  8. java 夯实基础_夯实基础-java equals使用,和 == 的区别
  9. 【语音评价】基于matlab语音质量客观评价(PESQ)【含Matlab源码 1717期】
  10. NORDIC nRF52840 输入引脚初始化及中断操作
  11. 十进制与二进制相互转换(c++)
  12. python itchat实现调用微信接口的第三方模块方法
  13. OpenCV Error:Insufficient memory(Failed to allocate 1244164 bytes)
  14. 上海出差之行--领略外滩美景、RT-Thread总部之旅、嵌友面基、返程记录
  15. Java中重写父类方法
  16. 水安ABC考试多选练习题库
  17. 2018网易校招移动安全工程师笔试题
  18. 序列流 SequenceInputStream
  19. LearnOpenGL->光照->投光物/多光源
  20. c语言中p-next,c – p- next- prev与p相同吗?

热门文章

  1. 单目图像深度估计 - 尺度篇:Make3D
  2. 体制内年轻人会成为悲催一族吗?
  3. 新概念 Lesson 3 Nice to meet you
  4. idea中vue插件
  5. empireCMS 帝国cms功能总结
  6. UG编程一般流程(产品编程、模具编程、电极设计)看完会了吗?
  7. 计算机学年教学总结怎么写,计算机教学年终工作总结-
  8. 不谋一时不足以谋一域_:“不谋万世者,不足某一时。不谋全局者,不足谋一域”。什么意思?...
  9. 做一名威客,用你的知识赚钱
  10. Keras Model模型方法