python命令行解释器 argparse
一: argparse介绍
1. argparse
argparse,它是Python标准库中推荐使用的编写命令行程序的工具
parser = argparse.ArgumentParser() 创建一个实例,
#parser.parse_args() parse_args方法是从命令行的参数中返回了一些默认或指定的参数信息。
#print dir(parser)
parser.add_argument('square',help=' **2 ',type = int) 添加一个positional arguments(暂时不明白它的意思)
注: 这里参数的类型目前有两类: positional arguments optional arguments
#parser.add_argument('-t', metavar='THREADS', type=int, default=20,
# help='Num of scan threads for each scan process, 20 by default')
上面的方式可以把选项添加到optional参数中。
args = parser.parse_args()
print args.square **2 注意这里,args.xxx,xxx必须是add_argument添加的参数名称
2. add_argument 方法
add_argument:读入命令行参数,该调用有多个参数
ArgumentParser.add_argument(name or flags…[, action][, nargs][, const][,
default][, type][, choices][, required][, help][, metavar][, dest])
name or flags:是必须的参数,该参数接受选项参数或者是位置参数(一串文件名)
"""
>>> pp = argparse.ArgumentParser()
>>> pp.add_argument('-a',type=int,default = 1234567)
_StoreAction(option_strings=['-a'], dest='a', nargs=None, const=None, default=1234567, type=<type 'int'>, choices=None, help=None, metavar=None)
>>> args = pp.parse_args()
>>> args
Namespace(a=1234567)
>>> dir(args)
['__class__', '__contains__', '__delattr__', '__dict__', '__doc__', '__eq__', '__format__', '__getattribute__', '__hash__', '__init__', '__module__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', '_get_args', '_get_kwargs', 'a']
>>> print args.a
1234567
>>>
"""
https://docs.python.org/2/howto/argparse.html#id1
中文参考:
http://songpengfei.iteye.com/blog/1440158 介绍argparse模块的每个参数
http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=21633169&id=4387657 对add_argument方法介绍的较为详细
python命令行解释器 argparse的更多相关文章
- Python命令行解析argparse常用语法使用简介
查看原文:http://www.sijitao.net/2000.html python中的命令行解析最简单最原始的方法是使用sys.argv来实现,更高级的可以使用argparse这个模块.argp ...
- python 命令行参数——argparse模块的使用
以下内容主要来自:http://wiki.jikexueyuan.com/project/explore-python/Standard-Modules/argparse.html argparse ...
- Python 命令行工具 argparse 模块使用详解
先来介绍一把最基本的用法 import argparse parser = argparse.ArgumentParser() parser.parse_args() 在执行 parse_args() ...
- python命令行解析模块--argparse
python命令行解析模块--argparse 目录 简介 详解ArgumentParser方法 详解add_argument方法 参考文档: https://www.jianshu.com/p/aa ...
- Python 命令行之旅 —— 初探 argparse
『讲解开源项目系列』启动--让对开源项目感兴趣的人不再畏惧.让开源项目的发起者不再孤单.跟着我们的文章,你会发现编程的乐趣.使用和发现参与开源项目如此简单.欢迎联系我们给我们投稿,让更多人爱上开源.贡 ...
- 让你如绅士般基于描述编写 Python 命令行工具的开源项目:docopt
作者:HelloGitHub-Prodesire HelloGitHub 的<讲解开源项目>系列,项目地址:https://github.com/HelloGitHub-Team/Arti ...
- 用什么库写 Python 命令行程序?看这一篇就够了
作者:HelloGitHub-Prodesire HelloGitHub 的<讲解开源项目>系列,项目地址:https://github.com/HelloGitHub-Team/Arti ...
- CentOS 6.5上安装python2.7、pip以及Python命令行补全和yum冲突解决
目前CentOS6.5上自带的python版本为2.6,升级到python2.7会碰到很多问题.本文将介绍如何安装python2.7.pip以及python命令行补全. 一.如何安装python2.7 ...
- python命令行下tab键补全命令
在python命令行下不能使用tab键将命令进行补全,手动输入又很容易出错. 解决:tab.py #/usr/bin/env python # -*- coding:utf-8 -*- ''' 该模块 ...
随机推荐
- 将本地代码上传至github备份的操作方法
这篇文章写得是windows下的使用方法. 第一步:创建Github新账户 第二步:新建仓库 第三步:填写名称,简介(可选),勾选Initialize this repository with a R ...
- wchar_t内置还是别名?小问题一则(升级公司以前代码遇到的问题)
问题: 原来的2008工程用2010编译后,运行程序出现无法定位程序输入点 *@basic_string@_WU@*和*@basic_string@G@* 解决: 关闭“语言选项”中“将WChar_t ...
- php 画图片
<?php // 使用php操作gd库做图 // 1. 创建一个画布资源 $im = imagecreatetruecolor(80, 40); // 2. 画内容 // 2.1 先位画布准备颜 ...
- REVERSE-极客大挑战-geek2.apk
嗯 一道apk的题目,题目本身并不是很难,但是我用的python却坑了我小半天...不过在纠错的过程中我也学到了不少东西 链接:http://pan.baidu.com/s/1i5LkJDr 密码: ...
- USACO 刷水
BZOJ 1666 水.. BZOJ 1579 分层图最短路. BZOJ 1782 从一开始若某头牛停在U,那么U的子树的时间都会加一用BIT维护DFS序就行了 BZOJ 1572 贪心+堆 排序后查 ...
- Android下使用Properties文件保存程序设置
原文:http://jerrysun.blog.51cto.com/745955/804789 废话不说,直接上代码. 读取.properties文件中的配置: String strValue ...
- RoR简单的应用程序
在dos环境下执行找到需要新建的项目路径 输入命令rails -v #查看版本号
- List转MVC DropDownListFor(SelectList)
/// <summary> /// List转SelectListItem /// </summary> /// <typeparam name="T" ...
- editor does not contain a main type的解决方案
editor does not contain a main type的解决方案 今天用eclipse,当打算run一个带有main函数的class时,出现editor does not contai ...
- Spring Boot整合Activiti,查看流程图出现中文乱码问题
最近研究SpringBoot 整合Activiti时,实现流程图高亮追踪是出现中文乱码问题,找了很多方法,现在把我最后的解决方法提供给大家. Spring Boot是微服务快速开发框架,强调的是零配置 ...