python sys.argv[]用法实例详解


Posted in Python onMay 25, 2018

sys.argv[]是用来获取命令行参数的,sys.argv[0]表示代码本身文件路径,所以参数从1开始,以下两个例子说明:

1、使用sys.argv[]的一简单实例:

以下是sample1.py文件:

import sys,os  
print sys.argv 
os.system(sys.argv[1])

这个例子os.system接收命令行参数,运行参数指令,cmd命令行带参数运行python sample1.py notepad,将打开记事本程序。

2、这个例子是简明python教程上的,明白它之后你就明白sys.argv[]了。

以下是sample.py文件:

#!/usr/bin/env python  
#_*_ coding:utf-8 _*_  
import sys   
def readfile(filename): #定义readfile函数,从文件中读出文件内容   
  '''''''''Print a file to the standard output.'''   
  f = file(filename)   
  while True:   
    line = f.readline()   
    if len(line) == 0:   
      break   
    print line, # notice comma 分别输出每行内容   
  f.close()   
# Script starts from here  
print sys.argv  
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': #当命令行参数为-- version,显示版本号   
    print 'Version 1.2'   
  elif option == 'help': #当命令行参数为--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,读出其内容   
    readfile(filename)

在与sample.py同一目录下,新建3个记事本文件test.txt,test1.txt,test2.txt,内容如下图:    

python sys.argv[]用法实例详解               python sys.argv[]用法实例详解              python sys.argv[]用法实例详解                   

验证sample.py,如下:

C:\Users\91135\Desktop>python sample.py
 ['sample.py']
No action specified.
C:\Users\91135\Desktop>python sample.py --help
['sample.py', '--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
C:\Users\91135\Desktop>python sample.py --version
 ['sample.py', '--version']
Version 1.2
C:\Users\91135\Desktop>python sample.py --ok
 ['sample.py', '--ok']
Unknown option.
C:\Users\91135\Desktop>python sample.py test.txt
 ['sample.py', 'test.txt']
hello python!
C:\Users\91135\Desktop>python sample.py test.txt test1.txt test2.txt
 ['sample.py', 'test.txt', 'test1.txt', 'test2.txt']
 hello python!
 hello world!
hello wahaha!
goodbye!
C:\Users\91135\Desktop>

总结

以上所述是小编给大家介绍的python sys.argv[]用法实例详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
Django rest framework实现分页的示例
May 24 Python
解决Django数据库makemigrations有变化但是migrate时未变动问题
May 30 Python
我们为什么要减少Python中循环的使用
Jul 10 Python
python3发送邮件需要经过代理服务器的示例代码
Jul 25 Python
python 计算积分图和haar特征的实例代码
Nov 20 Python
python 实现将Numpy数组保存为图像
Jan 09 Python
jupyter notebook中新建cell的方法与快捷键操作
Apr 22 Python
Python startswith()和endswith() 方法原理解析
Apr 28 Python
python中如何写类
Jun 29 Python
Python通过yagmail实现发送邮件代码解析
Oct 27 Python
Django项目配置Memcached和Redis, 缓存选择哪个更有优势
Apr 06 Python
Python如何用re模块实现简易tokenizer
May 02 Python
python切片及sys.argv[]用法详解
May 25 #Python
windows下python安装pip图文教程
May 25 #Python
python3.6使用pymysql连接Mysql数据库
May 25 #Python
python matplotlib绘图,修改坐标轴刻度为文字的实例
May 25 #Python
Python二叉树定义与遍历方法实例分析
May 25 #Python
matplotlib 纵坐标轴显示数据值的实例
May 25 #Python
对python中Matplotlib的坐标轴的坐标区间的设定实例讲解
May 25 #Python
You might like
CodeIgniter框架常见用法工作总结
2017/03/16 PHP
详解PHP 7.4 中数组延展操作符语法知识点
2019/07/19 PHP
简单谈谈javascript代码复用模式
2015/01/28 Javascript
JS实现网页背景颜色与select框中颜色同时变化的方法
2015/02/27 Javascript
js实现时间显示几天前、几小时前或者几分钟前的方法集锦
2015/05/29 Javascript
基于jQuery Bar Indicator 插件实现进度条展示效果
2015/09/30 Javascript
jquery.validate使用详解
2016/06/02 Javascript
深入理解Javascript中的观察者模式
2017/02/20 Javascript
AngularJS自定义指令详解(有分页插件代码)
2017/06/12 Javascript
简单谈谈原生js的math对象
2017/06/27 Javascript
create-react-app构建项目慢的解决方法
2018/03/14 Javascript
解决vue的 v-for 循环中图片加载路径问题
2018/09/03 Javascript
NodeJS加密解密及node-rsa加密解密用法详解
2018/10/12 NodeJs
angularjs http与后台交互的实现示例
2018/12/21 Javascript
JavaScript函数式编程(Functional Programming)组合函数(Composition)用法分析
2019/05/22 Javascript
微信小程序动态设置图片大小的方法
2019/11/21 Javascript
vue中组件通信详解(父子组件, 爷孙组件, 兄弟组件)
2020/07/27 Javascript
python获取指定路径下所有指定后缀文件的方法
2015/05/26 Python
单链表反转python实现代码示例
2018/02/08 Python
Python cookbook(字符串与文本)针对任意多的分隔符拆分字符串操作示例
2018/04/19 Python
Django跨域请求问题的解决方法示例
2018/06/16 Python
Python递归函数实例讲解
2019/02/27 Python
python实现二级登陆菜单及安装过程
2019/06/21 Python
浅析Python 引号、注释、字符串
2019/07/25 Python
python自动化实现登录获取图片验证码功能
2019/11/20 Python
用opencv给图片换背景色的示例代码
2020/07/08 Python
Django创建一个后台的基本步骤记录
2020/10/02 Python
英国家庭珠宝商:T. H. Baker
2018/02/08 全球购物
Myprotein西班牙官网:欧洲第一大运动营养品牌
2020/02/24 全球购物
校运会入场式解说词
2014/02/10 职场文书
教师节演讲稿
2014/05/06 职场文书
汉语言文学毕业求职信
2014/07/17 职场文书
个人批评与自我批评发言稿
2014/09/28 职场文书
2014年新教师工作总结
2014/11/08 职场文书
项目备案申请报告
2015/05/15 职场文书
TensorFlow中tf.batch_matmul()的用法
2021/06/02 Python