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 相关文章推荐
用Python的Django框架完成视频处理任务的教程
Apr 02 Python
python 简单的多线程链接实现代码
Aug 28 Python
开源Web应用框架Django图文教程
Mar 09 Python
答题辅助python代码实现
Jan 16 Python
python使用KNN算法手写体识别
Feb 01 Python
Python操作mongodb的9个步骤
Jun 04 Python
pytorch中torch.max和Tensor.view函数用法详解
Jan 03 Python
Django 博客实现简单的全文搜索的示例代码
Feb 17 Python
Python可变对象与不可变对象原理解析
Feb 25 Python
python序列类型种类详解
Feb 26 Python
基于python实现把json数据转换成Excel表格
May 07 Python
Python socket服务常用操作代码实例
Jun 22 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
php UTF8 文件的签名问题
2009/10/30 PHP
PHP常量使用的几个需要注意的地方(谨慎使用PHP中的常量)
2014/09/12 PHP
dvwa+xampp搭建显示乱码的问题及解决方案
2015/08/23 PHP
laravel 5.1下php artisan migrate的使用注意事项总结
2017/06/07 PHP
Laravel事件监听器用法实例分析
2019/03/12 PHP
PHP7中I/O模型内核剖析详解
2019/04/14 PHP
学习面向对象之面向对象的术语
2010/11/30 Javascript
jquery 选项卡效果 新手代码
2011/07/08 Javascript
iframe子父页面调用js函数示例
2013/11/07 Javascript
js弹出div并显示遮罩层
2014/02/12 Javascript
checkbox勾选判断代码分析
2014/06/11 Javascript
JavaScript中继承用法实例分析
2015/05/16 Javascript
JS+CSS实现仿触屏手机拨号盘界面及功能模拟完整实例
2015/05/16 Javascript
jquery实现先淡出再折叠收起的动画效果
2015/08/07 Javascript
Query常用DIV操作获取和设置长度宽度的实现方法
2016/09/19 Javascript
js控制div层的叠加简单方法
2016/10/15 Javascript
JavaScript prototype属性详解
2016/10/25 Javascript
vue2.0 与 bootstrap datetimepicker的结合使用实例
2017/05/22 Javascript
react-router中的属性详解
2017/06/01 Javascript
cocos creator Touch事件应用(触控选择多个子节点的实例)
2017/09/10 Javascript
javascript基于定时器实现进度条功能实例
2017/10/13 Javascript
php中and 和 &amp;&amp;出坑指南
2018/07/13 Javascript
vue2.0结合Element-ui实战案例
2019/03/06 Javascript
python实现查询IP地址所在地
2015/03/29 Python
Python中关键字nonlocal和global的声明与解析
2017/03/12 Python
Python 3.8新特征之asyncio REPL
2019/05/28 Python
用python3读取python2的pickle数据方式
2019/12/25 Python
python中使用paramiko模块并实现远程连接服务器执行上传下载功能
2020/02/29 Python
Python drop方法删除列之inplace参数实例
2020/06/27 Python
python用Tkinter做自己的中文代码编辑器
2020/09/07 Python
事业单位请假制度
2014/01/13 职场文书
大学生职业规划书的范本
2014/02/18 职场文书
电子商务专业自荐信
2014/06/02 职场文书
MySQL开启事务的方式
2021/06/26 MySQL
java设计模式--建造者模式详解
2021/07/21 Java/Android
Java面试题冲刺第十五天--设计模式
2021/08/07 面试题