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中的一些高级编程技巧
Apr 02 Python
Python IDE PyCharm的基本快捷键和配置简介
Nov 04 Python
python实现按行切分文本文件的方法
Apr 18 Python
深入理解python多进程编程
Jun 12 Python
基于scrapy的redis安装和配置方法
Jun 13 Python
Django forms组件的使用教程
Oct 08 Python
Python 用三行代码提取PDF表格数据
Oct 13 Python
解决springboot yml配置 logging.level 报错问题
Feb 21 Python
Python批量安装卸载1000个apk的方法
Apr 10 Python
scrapy-redis分布式爬虫的搭建过程(理论篇)
Sep 29 Python
用python计算文件的MD5值
Dec 23 Python
教你用python实现12306余票查询
Jun 30 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 for 循环使用的简单实例
2016/06/02 PHP
thinkphp修改配置进入默认首页的方法
2017/02/07 PHP
thinkphp ajaxfileupload实现异步上传图片的示例
2017/08/28 PHP
PHP中创建和编辑Excel表格的方法
2018/09/13 PHP
用YUI做了个标签浏览效果
2007/02/20 Javascript
JavaScript的eval JSON object问题
2009/11/15 Javascript
CutePsWheel javascript libary 控制输入文本框为可使用滚轮控制的js库
2010/02/07 Javascript
JavaScript中的property和attribute介绍
2011/12/26 Javascript
JavaScript 性能优化小结
2015/10/12 Javascript
日常收集整理的JavaScript常用函数方法
2015/12/10 Javascript
实例详解jQuery结合GridView控件的使用方法
2016/01/04 Javascript
多种JQuery循环滚动文字图片效果代码
2020/06/23 Javascript
javascript函数命名的三种方式及区别介绍
2016/03/22 Javascript
Javascript中的arguments对象
2016/06/20 Javascript
学习使用jQuery表单验证插件和日历插件
2017/02/13 Javascript
Bootstrap组件之下拉菜单,多级菜单及按钮布局方法实例
2017/05/25 Javascript
教你如何用node连接redis的示例代码
2018/07/12 Javascript
vue 实现左右拖拽元素并且不超过他的父元素的宽度
2018/11/30 Javascript
Vue.js组件props数据验证实现详解
2019/10/19 Javascript
简单介绍Python中的RSS处理
2015/04/13 Python
在Python中操作时间之mktime()方法的使用教程
2015/05/22 Python
python 处理string到hex脚本的方法
2018/10/26 Python
Python计算一个点到所有点的欧式距离实现方法
2019/07/04 Python
python字符串的拼接方法总结
2019/11/18 Python
django之从html页面表单获取输入的数据实例
2020/03/16 Python
Django中文件上传和文件访问微项目的方法
2020/04/27 Python
部署Django到阿里云服务器教程示例
2020/06/03 Python
浅析python字符串前加r、f、u、l 的区别
2021/01/24 Python
锐步美国官方网站:Reebok美国
2018/01/10 全球购物
乡镇庆八一活动方案
2014/02/02 职场文书
中学生打架检讨书
2014/10/13 职场文书
保护动物的宣传语
2015/07/13 职场文书
幼儿园开学家长寄语(2016秋季)
2015/12/03 职场文书
大学生村官驻村工作心得体会
2016/01/23 职场文书
Python快速实现一键抠图功能的全过程
2021/06/29 Python
剖析后OpLog订阅MongoDB的数据变更就没那么难了
2022/02/24 MongoDB