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之PyMongo使用总结
May 26 Python
Python简单实现的代理服务器端口映射功能示例
Apr 08 Python
在dataframe两列日期相减并且得到具体的月数实例
Jul 03 Python
详解如何为eclipse安装合适版本的python插件pydev
Nov 04 Python
Python使用pyautocad+openpyxl处理cad文件示例
Jul 11 Python
浅析Python语言自带的数据结构有哪些
Aug 27 Python
django框架基于queryset和双下划线的跨表查询操作详解
Dec 11 Python
python简单实现最大似然估计&scipy库的使用详解
Apr 15 Python
Python3实现飞机大战游戏
Apr 24 Python
接口自动化多层嵌套json数据处理代码实例
Nov 20 Python
python爬虫爬取图片的简单代码
Jan 18 Python
python scrapy简单模拟登录的代码分析
Jul 21 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
雄兵连:天使彦天使彦为爱折翼,彦和炙心同时念动的誓言!
2020/03/02 国漫
ThinkPHP采用实现三级循环代码实例
2014/07/18 PHP
thinkPHP实现瀑布流的方法
2014/11/29 PHP
Gird事件机制初级读本
2007/03/10 Javascript
javascript demo 基本技巧
2009/12/18 Javascript
Jquery图形报表插件 jqplot简介及参数详解
2012/10/10 Javascript
jQuery把表单元素变为json对象
2013/11/06 Javascript
按Enter键触发事件的jquery方法实现代码
2014/02/17 Javascript
JavaScript动态插入CSS的方法
2015/12/10 Javascript
jQuery插件之jQuery.Form.js用法实例分析(附demo示例源码)
2016/01/04 Javascript
探究Javascript模板引擎mustache.js使用方法
2016/01/26 Javascript
BootStrap使用file-input插件上传图片的方法
2016/09/05 Javascript
js实现自定义路由
2017/02/04 Javascript
Vue.js使用$.ajax和vue-resource实现OAuth的注册、登录、注销和API调用
2017/05/10 Javascript
使用jQuery.Pin垂直滚动时固定导航
2017/05/24 jQuery
详解express与koa中间件模式对比
2017/08/07 Javascript
关于vue-router的beforeEach无限循环的问题解决
2017/09/09 Javascript
bootstrap 通过加减按钮实现输入框组功能
2017/11/15 Javascript
JS实现DOM删除节点操作示例
2018/04/04 Javascript
解决vue项目打包上服务器显示404错误,本地没出错的问题
2020/11/03 Javascript
JavaScript中展开运算符及应用的实例代码
2021/01/14 Javascript
详解C++编程中一元运算符的重载
2016/01/19 Python
使用Python写个小监控
2016/01/27 Python
python和opencv实现抠图
2018/07/18 Python
python写一个随机点名软件的实例
2019/11/28 Python
python-视频分帧&多帧合成视频实例
2019/12/10 Python
python实现mean-shift聚类算法
2020/06/10 Python
TensorFlow低版本代码自动升级为1.0版本
2021/02/20 Python
英国家电购物网站:Sonic Direct
2019/03/26 全球购物
自主招生自荐信
2013/12/08 职场文书
消防战士优秀事迹材料
2014/02/13 职场文书
安全生产承诺书
2014/03/26 职场文书
2015新员工试用期工作总结
2014/12/12 职场文书
农民工工资保障承诺书
2015/05/04 职场文书
css实现左上角飘带效果的完整代码
2022/03/18 HTML / CSS
Win11怎么把合并的任务栏分开 Win11任务栏合并分开教程
2022/04/06 数码科技