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 BeautifulSoup使用方法详解
Nov 21 Python
Python中if __name__ == '__main__'作用解析
Jun 29 Python
Python编程之变量赋值操作实例分析
Jul 24 Python
在python中按照特定顺序访问字典的方法详解
Dec 14 Python
解决django后台样式丢失,css资源加载失败的问题
Jun 11 Python
pytorch 更改预训练模型网络结构的方法
Aug 19 Python
python爬虫 基于requests模块发起ajax的get请求实现解析
Aug 20 Python
python3 写一个WAV音频文件播放器的代码
Sep 27 Python
基于tf.shape(tensor)和tensor.shape()的区别说明
Jun 30 Python
解决Jupyter-notebook不弹出默认浏览器的问题
Mar 30 Python
如何通过一篇文章了解Python中的生成器
Apr 02 Python
Python开发五子棋小游戏
Apr 28 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
简单的过滤字符串中的HTML标记
2006/12/25 PHP
php表单习惯用的正则表达式
2017/10/11 PHP
表单提交时自动复制内容到剪贴板的js代码
2007/03/16 Javascript
关于onScroll事件在IE6下每次滚动触发三次bug说明
2011/09/21 Javascript
JS 去前后空格大全(IE9亲测)
2013/07/15 Javascript
js的alert样式如何更改如背景颜色
2014/01/22 Javascript
js的参数有长度限制吗?发现不能超过2083个字符
2014/04/20 Javascript
JavaScript中Cookie操作实例
2015/01/09 Javascript
jQuery实现仿新浪微博浮动的消息提示框(可智能定位)
2015/10/10 Javascript
Angularjs中使用Filters详解
2016/03/11 Javascript
js获取Get值的方法
2016/09/29 Javascript
JSON 数据详解及实例代码分析
2017/01/20 Javascript
Layui 设置select下拉框自动选中某项的方法
2018/08/14 Javascript
vue工程全局设置ajax的等待动效的方法
2019/02/22 Javascript
怎样在vue项目下添加ESLint的方法
2019/05/16 Javascript
[07:40]DOTA2每周TOP10 精彩击杀集锦vol.4
2014/06/25 DOTA
跟老齐学Python之折腾一下目录
2014/10/24 Python
django上传图片并生成缩略图方法示例
2017/12/11 Python
可能是最全面的 Python 字符串拼接总结【收藏】
2018/07/09 Python
win10系统下Anaconda3安装配置方法图文教程
2018/09/19 Python
解决Shell执行python文件,传参空格引起的问题
2018/10/30 Python
在IPython中执行Python程序文件的示例
2018/11/01 Python
对python实现二维函数高次拟合的示例详解
2018/12/29 Python
使用Python做定时任务及时了解互联网动态
2019/05/15 Python
Python closure闭包解释及其注意点详解
2019/08/28 Python
基于python求两个列表的并集.交集.差集
2020/02/10 Python
python ImageDraw类实现几何图形的绘制与文字的绘制
2020/02/26 Python
python3实现往mysql中插入datetime类型的数据
2020/03/02 Python
Python3.7.0 Shell添加清屏快捷键的实现示例
2020/03/23 Python
Softmax函数原理及Python实现过程解析
2020/05/22 Python
谷歌浏览器小字体处理方案即12px以下字体
2013/12/17 HTML / CSS
小学生评语集锦
2014/04/18 职场文书
2015年结对帮扶工作总结
2015/05/04 职场文书
聊聊Python String型列表求最值的问题
2022/01/18 Python
MySQL中优化SQL语句的方法(show status、explain分析服务器状态信息)
2022/04/09 MySQL
nginx访问报403错误的几种情况详解
2022/07/23 Servers