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使用PyV8执行javascript代码示例分享
Dec 04 Python
在Python中操作字典之setdefault()方法的使用
May 21 Python
正确理解python中的关键字“with”与上下文管理器
Apr 21 Python
PyCharm的设置方法和第一个Python程序的建立
Jan 16 Python
Python实现最常见加密方式详解
Jul 13 Python
python输出带颜色字体实例方法
Sep 01 Python
Python小程序之在图片上加入数字的代码
Nov 26 Python
PyQt5中多线程模块QThread使用方法的实现
Jan 31 Python
如何使用repr调试python程序
Feb 28 Python
Python动态强类型解释型语言原理解析
Mar 25 Python
Django程序的优化技巧
Apr 29 Python
Python保存并浏览用户的历史记录
Apr 29 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 getsiteurl()函数
2009/09/05 PHP
php 获取全局变量的代码
2011/04/21 PHP
PHP获取当前执行php文件名的代码
2017/03/02 PHP
laravel框架路由分组,中间件,命名空间,子域名,路由前缀实例分析
2020/02/18 PHP
PHP之header函数详解
2021/03/02 PHP
静态页面下用javascript操作ACCESS数据库(读增改删)的代码
2007/05/14 Javascript
使用jquery实现放大镜效果
2014/09/02 Javascript
javascript cookie的简单应用
2016/02/24 Javascript
探讨跨域请求资源的几种方式(总结)
2016/12/02 Javascript
RequireJS 依赖关系的实例(推荐)
2017/01/21 Javascript
angular+ionic返回上一页并刷新页面
2017/08/08 Javascript
js求数组中全部数字可拼接出的最大整数示例代码
2017/08/25 Javascript
jQuery实现的鼠标响应缓冲动画效果示例
2018/02/13 jQuery
手写Node静态资源服务器的实现方法
2018/03/20 Javascript
vue集成百度UEditor富文本编辑器使用教程
2018/09/21 Javascript
用vite搭建vue3应用的实现方法
2021/02/22 Vue.js
Python程序员鲜为人知但你应该知道的17个问题
2014/06/04 Python
Python编程之属性和方法实例详解
2015/05/19 Python
简单学习Python time模块
2016/04/29 Python
利用Python为iOS10生成图标和截屏
2016/09/24 Python
python数据类型_元组、字典常用操作方法(介绍)
2017/05/30 Python
Python3实现爬虫爬取赶集网列表功能【基于request和BeautifulSoup模块】
2018/12/05 Python
python 实现非极大值抑制算法(Non-maximum suppression, NMS)
2020/10/15 Python
简述Html5 IphoneX 适配方法
2018/02/08 HTML / CSS
女士时装鞋:Chinese Laundry
2018/08/29 全球购物
在线购买澳大利亚设计师手拿包和奢华晚装手袋:Olga Berg
2019/03/20 全球购物
C语言面试题
2013/05/19 面试题
上海期货面试题
2014/01/31 面试题
影视制作岗位职责
2013/12/04 职场文书
住院医师规范化培训实施方案
2014/06/12 职场文书
大学生见习期满自我鉴定
2014/09/13 职场文书
教师个人查摆剖析材料
2014/10/14 职场文书
乡镇群众路线专项整治方案
2014/11/03 职场文书
讲座新闻稿
2015/07/18 职场文书
婚宴新娘致辞
2015/07/28 职场文书
小学三年级班主任工作经验交流材料
2015/11/02 职场文书