Chinaunix首页 | 论坛 | 博客
  • 博客访问: 531872
  • 博文数量: 174
  • 博客积分: 4177
  • 博客等级: 上校
  • 技术积分: 1827
  • 用 户 组: 普通用户
  • 注册时间: 2007-10-15 14:12
文章分类

全部博文(174)

文章存档

2018年(1)

2017年(1)

2013年(3)

2012年(9)

2010年(12)

2009年(5)

2008年(106)

2007年(37)

我的朋友

分类: Python/Ruby

2008-12-26 15:43:28

【原创:转载请注明出处,否者××××××】

http://hi.baidu.com/javalang/blog/item/1f72fe034fb9de743812bb7e.html

可以参考

# -*- coding: cp936 -*-
import getopt
import sys

def usage():
    print '''Help Information:
    -h: Show help information
    -xValue:
    ...'''

if __name__=='__main__':
    #set default values
    x=1
    y='y'

    try:
        print sys.argv[1:]
        opts,args=getopt.getopt(sys.argv[1:],'hx:y:d')
        #opts 是带-选项的参数
        #args 是没有选项的参数
        print opts
        print args
        #h表示使用-h,h选项没有对应的值
        #x:表示你要使用-xValue,x选项必须有对应的值.
    except getopt.GetoptError:
        #打印帮助信息并退出
        usage()
        sys.exit(2)
    #处理命令行参数
    for o,a in opts:
        if o=='-h':
            usage()
            sys.exit()
        if o=='-x':
            try:
                x=x+int(a) #注意默认a为字符串
            except ValueError:
                print 'Invalid Value'
            print x
        if o=='-d':
            print 'use -d'
        if o=='-y':
            y=y+a

运行结果:
getopt_example.py -x12 -y ss -d sdf s123
['-x12', '-y', 'ss', '-d', 'sdf', 's123']
[('-x', '12'), ('-y', 'ss'), ('-d', '')]
['sdf', 's123']
13
use -d
阅读(1119) | 评论(0) | 转发(0) |
0

上一篇:用Python来实现<>

下一篇:双通道内存技术

给主人留下些什么吧!~~