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判断IP地址合法性的方法实例
Mar 13 Python
详解在Python和IPython中使用Docker
Apr 28 Python
Python中动态创建类实例的方法
Mar 24 Python
Python unittest模块用法实例分析
May 25 Python
Python全局变量与局部变量区别及用法分析
Sep 03 Python
Python求两个圆的交点坐标或三个圆的交点坐标方法
Nov 07 Python
节日快乐! Python画一棵圣诞树送给你
Dec 24 Python
pytorch载入预训练模型后,实现训练指定层
Jan 06 Python
如何基于python实现归一化处理
Jan 20 Python
用python进行视频剪辑
Nov 02 Python
Django 实现图片上传和下载功能
Dec 31 Python
用Python将GIF动图分解成多张静态图片
Jun 11 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 缓存实现代码及详细注释
2010/05/16 PHP
php实现12306火车票余票查询和价格查询(12306火车票查询)
2014/01/14 PHP
php连接oracle数据库的方法(测试成功)
2016/05/26 PHP
php微信公众号开发之欢迎老朋友
2018/10/20 PHP
Code: write(s,d) 输出连续字符串
2007/08/19 Javascript
jQuery动态添加的元素绑定事件处理函数代码
2011/08/02 Javascript
js中将String转换为number以便比较
2014/07/08 Javascript
JavaScript分秒倒计时器实现方法
2015/02/02 Javascript
jQuery实现返回顶部功能
2016/02/23 Javascript
概述一个页面从输入URL到页面加载完的过程
2016/12/16 Javascript
socket.io与pm2(cluster)集群搭配的解决方案
2017/06/02 Javascript
Bootstrap按钮组实例详解
2017/07/03 Javascript
解决JS外部文件中文注释出现乱码问题
2017/07/09 Javascript
js实现鼠标移动到图片产生遮罩效果
2017/10/21 Javascript
使用 Vue 绑定单个或多个 Class 名的实例代码
2018/01/08 Javascript
vue 使用html2canvas将DOM转化为图片的方法
2018/09/11 Javascript
Vue.js 无限滚动列表性能优化方案
2019/12/02 Javascript
js绘制一条直线并旋转45度
2020/08/21 Javascript
[01:14]DOTA2亚洲邀请赛 ShowOpen
2015/02/07 DOTA
[01:08]DOTA2“血战之命”预告片
2017/08/12 DOTA
python实现BackPropagation算法
2017/12/14 Python
Python中最大最小赋值小技巧(分享)
2017/12/23 Python
Python 20行简单实现有道在线翻译的详解
2019/05/15 Python
如何运行.ipynb文件的图文讲解
2019/06/27 Python
基于Pytorch SSD模型分析
2020/02/18 Python
python def 定义函数,调用函数方式
2020/06/02 Python
巧用HTML5给按钮背景设计不同的动画简单实例
2016/08/09 HTML / CSS
eBay英国购物网站:eBay.co.uk
2019/06/19 全球购物
某个公司的Java笔面试题
2016/03/11 面试题
医院工作检讨书范文
2014/02/10 职场文书
2014全国两会学习心得体会2000字
2014/03/10 职场文书
护士2015年终工作总结
2015/04/29 职场文书
社区宣传标语口号
2015/12/26 职场文书
2016年企业安全生产月活动总结
2016/04/06 职场文书
导游词之江苏同里古镇
2019/11/18 职场文书
Redis基本数据类型Set常用操作命令
2022/06/01 Redis