python命令行参数用法实例分析


Posted in Python onJune 25, 2019

本文实例讲述了python命令行参数用法。分享给大家供大家参考,具体如下:

在命令行下执行某些命令的时候,通常会在一个命令后面带上一些参数,这些参数会传递到程序里,进行处理,然后返回结果,在linux 下很多命令其实也是用python来实现的。那么如果做到在命令行输入类似如下的命令并能得到正确的解析呢,比如

python commandline.py -l c:/temp -f c:/aaa.txt

这样的命令,并在程序中进行处理。下面详细介绍处理办法。

python为我们提供了一个模块叫optparse,也是专门来处理命令行选项的。使用的方法

1. 产生一个 optparse.OptionParser 对象
2. 为这个对象增加 option
3. 对 optparse.OptionParser对象进行parse_args() 解析. 就能得到要调用的方法,和具体的参数,下面就按这个步骤写了一个例子:

#coding:utf-8
import optparse
import sys
def execCommand():
  descriptionMessage = """
  python command line test
  """
  p = optparse.OptionParser(description=descriptionMessage,
                prog='mycommand',
                version='mycommand 0.1',
                usage= '%prog [starting ][action]')
  p.add_option('--list', '-l',
      action="store_true",
      help='lists all files',
      default=False)
  p.add_option('--file', '-f',
      action="store_true",
      help='test process file',
      default=False)
  options, arguments = p.parse_args()
  print 'get all options:',options
  if options.list:
    print 'begin list function :',arguments
    #可以写入你自己的逻辑了
  if options.file:
    print 'begin file function:',arguments
    #可以写入自己的逻辑处理了
if __name__=='__main__':
  execCommand()

下面在命令行窗口运行处理,看效果图:

python命令行参数用法实例分析

python命令行参数用法实例分析

python命令行参数用法实例分析

由此我们可以发现, options 里面 记录了每个选项是否为 true ,而 arguments 里面按顺序记录了各自的参数。我们可以在自己的程序中得到,并进行处理。

当然,你还可以通过 print sys.argv 来得到所有的参数,但sys.argv[0]表示的就是当前执行的脚本.后面的才是参数.

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
python 控制语句
Nov 03 Python
Python实现的手机号归属地相关信息查询功能示例
Jun 08 Python
python计算auc指标实例
Jul 13 Python
Python wxPython库Core组件BoxSizer用法示例
Sep 03 Python
对Python中Iterator和Iterable的区别详解
Oct 18 Python
PyCharm 设置SciView工具窗口的方法
Jan 15 Python
使用TensorFlow实现二分类的方法示例
Feb 05 Python
Python实现二叉树前序、中序、后序及层次遍历示例代码
May 18 Python
Python求均值,方差,标准差的实例
Jun 29 Python
Python SSL证书验证问题解决方案
Jan 13 Python
Python callable内置函数原理解析
Mar 05 Python
python 解决pycharm运行py文件只有unittest选项的问题
Sep 01 Python
PyQt5重写QComboBox的鼠标点击事件方法
Jun 25 #Python
bluepy 一款python封装的BLE利器简单介绍
Jun 25 #Python
PyQt5下拉式复选框QComboCheckBox的实例
Jun 25 #Python
在Pandas中处理NaN值的方法
Jun 25 #Python
python实现websocket的客户端压力测试
Jun 25 #Python
python中metaclass原理与用法详解
Jun 25 #Python
python实现接口并发测试脚本
Jun 25 #Python
You might like
PHP操作文件类的函数代码(文件和文件夹创建,复制,移动和删除)
2011/11/10 PHP
PHP获取MSN好友列表类的实现代码
2013/06/23 PHP
从零开始学YII2框架(五)快速生成代码工具 Gii 的使用
2014/08/20 PHP
php模拟服务器实现autoindex效果的方法
2015/03/10 PHP
php使用curl简单抓取远程url的方法
2015/03/13 PHP
php中对象引用和复制实例分析
2019/08/14 PHP
JS获取页面input控件中所有text控件并追加样式属性
2013/02/25 Javascript
Ajax提交与传统表单提交的区别说明
2014/02/07 Javascript
jQuery ajax提交Form表单实例(附demo源码)
2016/04/06 Javascript
jQuery增加和删除表格项目及实现表格项目排序的方法
2016/05/30 Javascript
最佳的JavaScript错误处理实践
2016/07/16 Javascript
jQuery实现的表格展开伸缩效果实例
2016/09/07 Javascript
Vue组件BootPage实现简单的分页功能
2016/09/12 Javascript
Javascript动画效果(1)
2016/10/11 Javascript
js Canvas实现的日历时钟案例分享
2016/12/25 Javascript
vue+vuex+axio从后台获取数据存入vuex实现组件之间共享数据
2017/04/22 Javascript
详解Vue中localstorage和sessionstorage的使用
2017/12/22 Javascript
JavaScript实现读取与输出XML文件数据的方法示例
2018/06/05 Javascript
浅谈Vue 性能优化之深挖数组
2018/12/11 Javascript
Vue 的双向绑定原理与用法揭秘
2020/05/06 Javascript
在vscode 中设置 vue模板内容的方法
2020/09/02 Javascript
[01:38]DOTA2辉夜杯 欢乐的观众现场采访
2015/12/26 DOTA
python实现简单爬虫功能的示例
2016/10/24 Python
python实现求最长回文子串长度
2018/01/22 Python
Python中函数参数调用方式分析
2018/08/09 Python
Python命名空间的本质和加载顺序
2018/12/17 Python
python3 json数据格式的转换(dumps/loads的使用、dict to str/str to dict、json字符串/字典的相互转换)
2019/04/01 Python
Django中ORM外键和表的关系详解
2019/05/20 Python
Python3 pickle对象串行化代码实例解析
2020/03/23 Python
Django 如何使用日期时间选择器规范用户的时间输入示例代码详解
2020/05/22 Python
css3 中实现炫酷的loading效果
2019/04/26 HTML / CSS
金融管理应届生求职信
2014/02/20 职场文书
幼儿园大班教育随笔
2015/08/14 职场文书
《小摄影师》教学反思
2016/02/18 职场文书
MySQL创建索引需要了解的
2021/04/08 MySQL
pytorch实现加载保存查看checkpoint文件
2022/07/15 Python