sys.argv[]是用来获取命令行参数的,是一个由该脚本自身路径和其它输入的参数组成的List。sys.argv[0]表示代码本身文件路径。

这里,当我们执行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开始。

# -*- coding:utf-8 -*-

from sys import argv

script,first,second,third=argv

print "The script is called:",script
print "Your first variable is:", first
print "Your second variable is:",second
print "Your third variable is:",third > python ex13.py first,2nd,3th
The script is called: ex13.py
Your first variable is: first
Your second variable is: 2nd
Your third variable is: 3th
# -*- coding:utf-8 -*-

import sys

def readfile(filename):
f=file(filename)
while True:
line=f.readline()
if len(line)==0:
break
print line
f.close() if len(sys.argv)<2:
print "No action specofied."
sys.exit() for i in range(len(sys.argv)):
print "sys.argv[%d]-----%s" %(i,sys.argv[i]) if sys.argv[1].startswith('--'):
option=sys.argv[1][2:]
#fetch sys.argv[1] without the first two characters
if option == "version":
print "Version 1.2"
if 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 ex13_2.py filename : will display content in file
""" if option not in ["version","help"]:
print "Unknow option."
sys.exit()
else:
for filename in sys.argv[1:]:
readfile(filename) > python ex13_3.py
No action specofied.
> python ex13_3.py --version
sys.argv[0]-----ex13_3.py
sys.argv[1]-------version
Version 1.2
> python ex13_3.py --help
sys.argv[0]-----ex13_3.py
sys.argv[1]-------help 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 ex13_2.py filename : will display content in file > python ex13_3.py 1.txt 2.txt
sys.argv[0]-----ex13_3.py
sys.argv[1]-----1.txt
sys.argv[2]-----2.txt
test for sys.argv
test2
> python ex13_3.py 1.txt
sys.argv[0]-----ex13_3.py
sys.argv[1]-----1.txt
test for sys.argv
> python ex13_3.py 1.txt 2.txt
sys.argv[0]-----ex13_3.py
sys.argv[1]-----1.txt
sys.argv[2]-----2.txt
test for sys.argv
test2
> python ex13_3.py 1.txt 2.txt 3.txt
sys.argv[0]-----ex13_3.py
sys.argv[1]-----1.txt
sys.argv[2]-----2.txt
sys.argv[3]-----3.txt
test for sys.argv
test2
test3

python sys.argv[]的更多相关文章

  1. Python sys.argv[]用法

    sys.argv,其实就是一个list,它是sys模块下的一个全局变量,第一个元素是模块名.后面是依次传入的参数. 比如可以这样传入 pyton temp.py a b c d,一共传入a.b.c.d ...

  2. Python sys.argv[] 的用法

    sys.argv变量是一个list, 执行 python abc.py a b c 时, sys.argv[0]为 abc.py sys.argv[1]为 a sys.argv[2]为 b sys.a ...

  3. python sys.argv[]的用法简明解释

    sys模块中文参考文档:http://xukaizijian.blog.163.com/blog/static/170433119201111625428624/ sys.argv[]: 「argv」 ...

  4. python sys.argv是什么?

    1.sys.argv 是获取运行python文件的时候命令行参数,且以list形式存储参数 2.sys.argv[0] 代表当前module的名字 下面的代码文件是a.py,当我不用IDE工具,只用命 ...

  5. Python sys.argv[] 使用

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

  6. python sys.argv[]简单解释

    上一篇UDP编程中简单使用了一些sys模块的argv参数,也是我第一次看见这个参数,这里做个记录: sys.argv是一个从程序外部获取参数的桥梁,这个“外部”很关键, 因为我们从外部取得的参数可以是 ...

  7. 【python】sys.argv[]的用法

    在学python的过程中,一直弄不明白sys.argv[]的意思,虽知道是表示命令行参数,但还是有些稀里糊涂的感觉. 今天又好好学习了一把,总算是大彻大悟了. Sys.argv[]是用来获取命令行参数 ...

  8. python基础之 sys.argv[]用法

    sys.argv[]是用来获取命令行参数的,sys.argv[0]表示代码本身文件路径,所以参数从1开始. arg[1]表示第一个命令行参数 arg[1][2:] 表示取第一个命令行参数,但是去掉前两 ...

  9. Python命令行参数sys.argv[]

    学习C语言的时候就没弄明白命令行参数的用法,在学习Pyton 的时候又遇到了命令行参数,在这里稍微学习了一下,稍微明白了一些在这里做个记录方便后面回顾复习. Sys.argv[]是用来获取命令行参数的 ...

随机推荐

  1. 【LEETCODE OJ】Reorder List

    Problem link: http://oj.leetcode.com/problems/reorder-list/ I think this problem should be a difficu ...

  2. Java 集合深入理解(3):Collection

    点击查看 Java 集合框架深入理解 系列, - ( ゜- ゜)つロ 乾杯~ 今天心情有点粉,来学学 Collection 吧! 什么是集合? 集合,或者叫容器,是一个包含多个元素的对象: 集合可以对 ...

  3. 10、C#基础整理(集合)

    集合 1.集合的引用 using System.Collections;//添加类 2.定义集合(ArrayList 或 Array) ArrayList arr = new ArrayList(); ...

  4. magento提速的一些小技巧,列举manegnto网站提速的

    下面列举一些可以 Magneot提速 的方法 本文系宇讯原创Magento教程,转载请注明出处. 1:使用CSS /图像精灵Magento提速. 一种图像精灵放入一个单一的图像,并通过特定的CSS类调 ...

  5. oracle注意事项

    企业管理器system登陆时必须使用normal模式

  6. ERROR 1130: Host ’...′ is not allowed to connect to this MySQL server

    /******************************************************************** * ERROR 1130: Host ’...′ is no ...

  7. Git工作常用

    工作时,最好每次都创建一个本地分支,这样就会减少错误修改远程代码的机会. 基于远程dev分支创建分支并切到本地分支: git checkout -b <local_dev> -t orig ...

  8. MyBatis日期有坑

    使用MyBatis时,可能会遇到日期格式的时间段问题,当数据库的时间为DATE类型时,MyBatis的jdbcType应该使用DATE,否则,有时间会出现莫名的数据找不到的问题,具体原因,可以查看源码 ...

  9. (实用篇)PHP JSON数组与对象的理解

    在PHP后端和客户端数据交互的过程中,JSON数据中有时格式不定,一会儿是数组,一会儿是对象,弄得客户端开发人员要崩溃的感觉. 因此,前后端相关人员先对PHP的json_encode函数原理有必要的了 ...

  10. 在Linux上使用web2py_uwsgi_nginx搭建web服务器

    本文介绍在Linux使用Python+Nginx+web2py+uWSGI搭建一个web服务器的过程. Python 2.7.11 解压安装包 tar -zxvf Python-2.7.11.tgz ...