python采用getopt解析命令行输入参数实例

yipeiwu_com7年前Python基础

本文实例讲述了python采用getopt解析命令行输入参数的方法,分享给大家供大家参考。

具体实例代码如下:

import getopt 
import sys 
 
config = { 
  "input":"", 
  "output":".", 
   
} 
 
#getopt三个选项,第一个一般为sys.argv[1:],第二个参数为短参数,如果参数后面必须跟值,须加:,第三个参数为长参数 
#是一个列表, 
opts, args = getopt.getopt(sys.argv[1:], 'hi:o:d',  
   [ 
    'input=',  
    'output=',  
    'help' 
    ] 
   ) 
 
#参数的解析过程,长参数为--,短参数为- 
for option, value in opts: 
  if option in ["-h","--help"]: 
    print """ 
    usage:%s --input=[value] --output=[value] 
    usage:%s -input value -o value 
    """ 
  elif option in ['--input', '-i']: 
    config["input"] = value 
  elif option in ['--output', '-o']: 
    config["output"] = value 
  elif option == "-d": 
    print "usage -d" 
 
print config  

输入的参数:

--input=c:\temp\aa -o c:\temp\output -d

打印的结果:

usage -d
{'input': 'c:\\temp\\aa', 'output': 'c:\\temp\\output'}

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

相关文章

opencv-python 提取sift特征并匹配的实例

我就废话不多说,直接上代码吧! # -*- coding: utf-8 -*- import cv2 import numpy as np from find_obj import...

python中数组和矩阵乘法及使用总结(推荐)

Matrix是Array的一个小的分支,包含于Array。所以matrix 拥有array的所有特性。 但在数组乘和矩阵乘时,两者各有不同,如果a和b是两个matrices,那么a*b,...

opencv3/C++图像像素操作详解

opencv3/C++图像像素操作详解

RGB图像转灰度图 RGB图像转换为灰度图时通常使用: 进行转换,以下尝试通过其他对图像像素操作的方式将RGB图像转换为灰度图像。 #include<opencv2/open...

Python随手笔记之标准类型内建函数

Python提供了一些内建函数用于基本对象类型:cmp(),repr(),str(),type()和等同于repr()的(' ')操作符 (1)type()    t...

Python2.x中文乱码问题解决方法

Python2.x中文乱码问题解决方法

Python中乱码问题是一个很头痛的问题。 在Python3中,对中文进行了全面的支持,但在Python2.x中需要进行相关的设置才能使用中文。否则会出现乱码 【问题原因】 在Pyth...