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分割TXT文件成4K的TXT文件
May 23 Python
python处理html转义字符的方法详解
Jul 01 Python
Django模板变量如何传递给外部js调用的方法小结
Jul 24 Python
python绘制铅球的运行轨迹代码分享
Nov 14 Python
使用python对excle和json互相转换的示例
Oct 23 Python
python计算阶乘和的方法(1!+2!+3!+...+n!)
Feb 01 Python
python的set处理二维数组转一维数组的方法示例
May 31 Python
使用python来调用CAN通讯的DLL实现方法
Jul 03 Python
Python的互斥锁与信号量详解
Sep 12 Python
Python with语句用法原理详解
Jul 03 Python
pycharm进入时每次都是insert模式的解决方式
Feb 05 Python
OpenCV-Python使用cv2实现傅里叶变换
Jun 09 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
浅析SVN常见问题及解决方法
2013/06/21 PHP
ThinkPHP使用smarty模板引擎的方法
2014/07/01 PHP
php获取ajax的headers方法与内容实例
2017/12/27 PHP
javascript 函数式编程
2007/08/16 Javascript
js写一个弹出层并锁屏效果实现代码
2012/12/07 Javascript
向当前style sheet中插入一个新的style实现方法
2013/04/01 Javascript
所见即所得的富文本编辑器bootstrap-wysiwyg使用方法详解
2016/05/27 Javascript
js继承实现方法详解
2016/12/16 Javascript
vuejs手把手教你写一个完整的购物车实例代码
2017/07/06 Javascript
Three.js加载外部模型的教程详解
2017/11/10 Javascript
Vim快速合并行及vim 将文件所有行合并到一行
2017/11/27 Javascript
vue-cli webpack 引入jquery的方法
2018/01/10 jQuery
Angular 4.x+Ionic3踩坑之Ionic 3.x界面传值详解
2018/03/13 Javascript
小程序组件之仿微信通讯录的实现代码
2018/09/12 Javascript
监听angularJs列表数据是否渲染完毕的方法示例
2018/11/07 Javascript
通过cordova将vue项目打包为webapp的方法
2019/02/02 Javascript
VUE实现图片验证码功能
2020/11/18 Javascript
JavaScript实现栈结构Stack过程详解
2020/03/07 Javascript
11个Javascript小技巧帮你提升代码质量(小结)
2020/12/28 Javascript
Python3通过Luhn算法快速验证信用卡卡号的方法
2015/05/14 Python
利用Python实现图书超期提醒
2016/08/02 Python
通过Python 接口使用OpenCV的方法
2018/04/02 Python
在Python中实现shuffle给列表洗牌
2018/11/08 Python
python单向链表的基本实现与使用方法【定义、遍历、添加、删除、查找等】
2019/10/24 Python
将python安装信息加入注册表的示例
2019/11/20 Python
python 实现矩阵填充0的例子
2019/11/29 Python
解决python web项目意外关闭,但占用端口的问题
2019/12/17 Python
python numpy数组复制使用实例解析
2020/01/10 Python
tensorflow多维张量计算实例
2020/02/11 Python
HTML5 DeviceOrientation实现手机网站摇一摇功能代码实例
2015/04/24 HTML / CSS
用canvas画心电图的示例代码
2018/09/10 HTML / CSS
美国购买隐形眼镜网站:Lenses For Less
2020/07/05 全球购物
结婚纪念日感言
2015/08/01 职场文书
《纸船和风筝》教学反思
2016/02/18 职场文书
《小蝌蚪找妈妈》教学反思
2016/02/23 职场文书
Python标准库pathlib操作目录和文件
2021/11/20 Python