Python sys.argv用法实例


Posted in Python onMay 28, 2015

sys.argv变量是一个字符串的列表。特别地,sys.argv包含了命令行参数 的列表,即使用命令行传递给你的程序的参数。

这里,当我们执行python using_sys.py we are arguments的时候,我们使用python命令运行using_sys.py模块,后面跟着的内容被作为参数传递给程序。Python为我们把它存储在sys.argv变量中。记住,脚本的名称总是sys.argv列表的第一个参数。所以,在这里,'using_sys.py'是sys.argv[0]、'we'是sys.argv[1]、'are'是sys.argv[2]以及'arguments'是sys.argv[3]。注意,Python从0开始计数,而非从1开始。

sys.argv[]是用来获取命令行参数的,sys.argv[0]表示代码本身文件路径;比如在CMD命令行输入 “python  test.py -help”,那么sys.argv[0]就代表“test.py”。

sys.startswith() 是用来判断一个对象是以什么开头的,比如在python命令行输入“'abc'.startswith('ab')”就会返回True
以下实例参考:

#!/usr/local/bin/env python

import sys

def readfile(filename):

    '''Print a file to the standard output.'''

    f = file(filename)

    while True:

          line = f.readline()

          if len(line) == 0:

             break

          print line,

    f.close()

print "sys.argv[0]---------",sys.argv[0]                                    

print "sys.argv[1]---------",sys.argv[1]                                    

print "sys.argv[2]---------",sys.argv[2]

# Script starts from here

if len(sys.argv) < 2:

    print 'No action specified.'

    sys.exit()

if sys.argv[1].startswith('--'):

   option = sys.argv[1][2:]

   # fetch sys.argv[1] but without the first two characters

   if option == 'version':

      print 'Version 1.2'

   elif option == 'help':

      print '''"

           This program prints files to the standard output.

           Any number of files can be specified.

           Options include:

           --version : Prints the version number

           --help    : Display this help'''

   else:

       print 'Unknown option.'

       sys.exit()

else:

    for filename in sys.argv[1:]:

        readfile(filename)

执行结果:# python test.py --version help

sys.argv[0]--------- test.py

sys.argv[1]--------- --version

sys.argv[2]--------- help

Version 1.2

注意:sys.argv[1][2:]表示从第二个参数,从第三个字符开始截取到最后结尾,本例结果为:version
Python 相关文章推荐
Python导入oracle数据的方法
Jul 10 Python
详解Python的Django框架中的模版继承
Jul 16 Python
Python常用知识点汇总
May 08 Python
浅谈Python peewee 使用经验
Oct 20 Python
对python中数据集划分函数StratifiedShuffleSplit的使用详解
Dec 11 Python
tensorflow实现读取模型中保存的值 tf.train.NewCheckpointReader
Feb 10 Python
Python run()函数和start()函数的比较和差别介绍
May 03 Python
python中shell执行知识点
May 06 Python
基于python实现地址和经纬度转换
May 19 Python
如何使用python的ctypes调用医保中心的dll动态库下载医保中心的账单
May 24 Python
python如何调用字典的key
May 25 Python
Python+MySQL随机试卷及答案生成程序的示例代码
Feb 01 Python
Python中exit、return、sys.exit()等使用实例和区别
May 28 #Python
Python中的with...as用法介绍
May 28 #Python
python关键字and和or用法实例
May 28 #Python
Python yield 使用浅析
May 28 #Python
Python中super的用法实例
May 28 #Python
Python中的super用法详解
May 28 #Python
Python读写ini文件的方法
May 28 #Python
You might like
用PHP实现维护文件代码
2007/06/14 PHP
php SQL防注入代码集合
2008/04/25 PHP
php 将bmp图片转为jpg等其他任意格式的图片
2009/06/21 PHP
PHP字符串的递增和递减示例介绍
2014/02/11 PHP
教你如何用php实现LOL数据远程获取
2014/06/10 PHP
jquery+json 通用三级联动下拉列表
2010/04/19 Javascript
JQuery跨Iframe选择实现代码
2010/08/19 Javascript
JQuery DataTable删除行后的页面更新利用Ajax解决
2013/05/17 Javascript
JavaScript中的prototype和constructor简明总结
2014/04/05 Javascript
jQuery实现统计复选框选中数量
2014/11/24 Javascript
基于jQuery实现自动轮播旋转木马特效
2015/11/02 Javascript
jquery拖动层效果插件用法实例分析(附demo源码)
2016/04/28 Javascript
HTML5基于Tomcat 7.0实现WebSocket连接并实现简单的实时聊天
2016/10/31 Javascript
浅谈vue路径优化之resolve
2017/10/13 Javascript
vue组件(全局,局部,动态加载组件)
2018/09/02 Javascript
vue中轮训器的使用
2019/01/27 Javascript
微信公众平台 发送模板消息(Java接口开发)
2019/04/17 Javascript
vue2.0项目集成Cesium的实现方法
2019/07/30 Javascript
vue中npm包全局安装和局部安装过程
2019/09/03 Javascript
Vue 组件注册全解析
2020/12/17 Vue.js
python获得图片base64编码示例
2014/01/16 Python
Python xlrd读取excel日期类型的2种方法
2015/04/28 Python
详解Python程序与服务器连接的WSGI接口
2015/04/29 Python
Python实现基于多线程、多用户的FTP服务器与客户端功能完整实例
2017/08/18 Python
Python利用pandas计算多个CSV文件数据值的实例
2018/04/19 Python
Python利用splinter实现浏览器自动化操作方法
2018/05/11 Python
Python字典的核心底层原理讲解
2019/01/24 Python
关于Python 常用获取元素 Driver 总结
2019/11/24 Python
浅谈pytorch卷积核大小的设置对全连接神经元的影响
2020/01/10 Python
基于TensorFlow的CNN实现Mnist手写数字识别
2020/06/17 Python
CSS3制作hover下划线动画
2017/03/27 HTML / CSS
美国环保妈妈、儿童和婴儿用品购物网站:The Tot
2019/11/24 全球购物
毕业生简单求职信
2013/11/19 职场文书
环境工程专业自荐信范文
2014/03/18 职场文书
企业2014年度工作总结
2014/12/10 职场文书
逃课检讨书怎么写
2015/01/01 职场文书