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 除法小技巧
Sep 06 Python
Python中使用PIPE操作Linux管道
Feb 04 Python
python让图片按照exif信息里的创建时间进行排序的方法
Mar 16 Python
处理Python中的URLError异常的方法
Apr 30 Python
Python3实现的画图及加载图片动画效果示例
Jan 19 Python
pandas的object对象转时间对象的方法
Apr 11 Python
pygame实现俄罗斯方块游戏
Jun 26 Python
不管你的Python报什么错,用这个模块就能正常运行
Sep 14 Python
详解python数据结构和算法
Apr 18 Python
浅谈tensorflow之内存暴涨问题
Feb 05 Python
python使用docx模块读写docx文件的方法与docx模块常用方法详解
Feb 17 Python
scrapy爬虫:scrapy.FormRequest中formdata参数详解
Apr 30 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
vBulletin HACK----显示话题大小和打开新窗口于论坛索引页
2006/10/09 PHP
PHP5 安装方法
2007/01/15 PHP
通过JavaScript或PHP检测Android设备的代码
2011/03/09 PHP
php分页思路以及在ZF中的使用
2012/05/30 PHP
PHP使用DES进行加密与解密的方法详解
2013/06/06 PHP
如何给phpcms v9增加类似于phpcms 2008中的关键词表
2013/07/01 PHP
php获取URL中带#号等特殊符号参数的解决方法
2014/09/02 PHP
PHP实现的策略模式简单示例
2017/08/25 PHP
JavaScript Accessor实现说明
2010/12/06 Javascript
JAVASCRIPT函数作用域和提前声明 分享
2013/08/22 Javascript
javascript创建数组之联合数组的使用方法示例
2013/12/26 Javascript
JavaScript编程中布尔对象的基本使用
2015/10/25 Javascript
JavaScript设置、获取、清除单值和多值cookie的方法
2015/11/17 Javascript
JS实现的仿淘宝交易倒计时效果
2015/11/27 Javascript
jQuery图片拖动组件Dropzone用法示例
2017/01/17 Javascript
Javascript实现的StopWatch功能示例
2017/06/13 Javascript
JS去掉字符串中所有的逗号
2017/10/18 Javascript
微信小程序实现全国机场索引列表
2018/01/31 Javascript
vue基础之事件简写、事件对象、冒泡、默认行为、键盘事件实例分析
2019/03/11 Javascript
vue实现购物车小案例
2019/09/27 Javascript
使用vue构建多页面应用的示例
2020/10/22 Javascript
[01:00:11]DOTA2-DPC中国联赛 正赛 CDEC vs DLG BO3 第一场 2月7日
2021/03/11 DOTA
轻松实现python搭建微信公众平台
2016/02/16 Python
详解Django中CBV(Class Base Views)模型源码分析
2019/02/25 Python
基于Tensorflow高阶读写教程
2020/02/10 Python
css3中用animation的steps属性制作帧动画
2019/04/25 HTML / CSS
html5使用Drag事件编辑器拖拽上传图片的示例代码
2017/08/22 HTML / CSS
美国女性卫生用品公司:Thinx
2017/06/30 全球购物
中青班党性分析材料
2014/02/16 职场文书
网络工程专业自荐信范文
2014/03/16 职场文书
监察建议书
2015/02/04 职场文书
2015年纪念“卢沟桥事变”78周年活动方案
2015/05/06 职场文书
数学复习课教学反思
2016/02/18 职场文书
Python道路车道线检测的实现
2021/06/27 Python
Mybatis是这样防止sql注入的
2021/12/06 Java/Android
基于Python实现一个春节倒计时脚本
2022/01/22 Python