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中的文件和目录操作实现代码
Mar 13 Python
python删除列表内容
Aug 04 Python
python 上下文管理器使用方法小结
Oct 10 Python
机器学习python实战之决策树
Nov 01 Python
Python读写docx文件的方法
May 08 Python
pandas 将list切分后存入DataFrame中的实例
Jul 03 Python
python读取csv和txt数据转换成向量的实例
Feb 12 Python
python+pyqt5实现图片批量缩放工具
Mar 18 Python
Django框架中序列化和反序列化的例子
Aug 06 Python
Windows下Pycharm远程连接虚拟机中Centos下的Python环境(图文教程详解)
Mar 19 Python
python的scipy.stats模块中正态分布常用函数总结
Feb 19 Python
一起来学习Python的元组和列表
Mar 13 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
世界咖啡生产者论坛呼吁:需要立即就咖啡价格采取认真行动
2021/03/06 咖啡文化
解密ThinkPHP3.1.2版本之模块和操作映射
2014/06/19 PHP
四个常见html网页乱码问题及解决办法
2015/09/08 PHP
php高性能日志系统 seaslog 的安装与使用方法分析
2020/02/29 PHP
超清晰的document对象详解
2007/02/27 Javascript
javascript下判断一个对象是否具有指定名称的属性的的代码
2010/01/11 Javascript
js通过更改按钮的显示样式实现按钮的滑动效果
2014/04/23 Javascript
Javascript解析URL方法详解
2014/12/05 Javascript
Bootstrap实现水平排列的表单
2016/07/04 Javascript
angular 动态组件类型详解(四种组件类型)
2017/02/22 Javascript
JavaScript 数据类型详解
2017/03/13 Javascript
jQuery Datatable 多个查询条件自定义提交事件(推荐)
2017/08/24 jQuery
JS实现简单的选择题测评系统代码思路详解(demo)
2017/09/03 Javascript
JS中的JSON对象的定义和取值实现代码
2018/05/09 Javascript
elementUI select组件默认选中效果实现的方法
2019/03/25 Javascript
在Vue项目中用fullcalendar制作日程表的示例代码
2019/08/04 Javascript
使用Angular material主题定义自己的组件库的配色体系
2019/09/04 Javascript
详解ES6 中的Object.assign()的用法实例代码
2021/01/11 Javascript
Flask框架的学习指南之用户登录管理
2016/11/20 Python
利用Python中unittest实现简单的单元测试实例详解
2017/01/09 Python
Python with语句上下文管理器两种实现方法分析
2018/02/09 Python
python实现list由于numpy array的转换
2018/04/04 Python
解决win64 Python下安装PIL出错问题(图解)
2018/09/03 Python
python实现朴素贝叶斯算法
2018/11/19 Python
详解numpy.meshgrid()方法使用
2019/08/01 Python
python3的url编码和解码,自定义gbk、utf-8的例子
2019/08/22 Python
python循环输出三角形图案的例子
2019/11/22 Python
python中tkinter窗口位置\坐标\大小等实现示例
2020/07/09 Python
python判断元素是否存在的实例方法
2020/09/24 Python
Ubuntu 20.04安装Pycharm2020.2及锁定到任务栏的问题(小白级操作)
2020/10/29 Python
上课玩手机检讨书
2014/02/08 职场文书
法院授权委托书范文
2014/08/02 职场文书
大学生联谊活动策划书(光棍节)
2014/10/10 职场文书
先进个人推荐材料
2014/12/29 职场文书
redis实现排行榜功能
2021/05/24 Redis
MySQL 外键约束和表关系相关总结
2021/06/20 MySQL