python中sys.argv参数用法实例分析


Posted in Python onMay 20, 2015

本文实例讲述了python中sys.argv参数用法。分享给大家供大家参考。具体分析如下:

在学python的过程中,一直弄不明白sys.argv[]的意思,虽知道是表示命令行参数,但还是有些稀里糊涂的感觉。

今天又好好学习了一把,总算是大彻大悟了。

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

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

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

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

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

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, # notice comma 分别输出每行内容
f.close()
# 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': #当命令行参数为-- 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.我们验证一下:

命令行带参数运行:sample.py ?version 输出结果为:version 1.2

命令行带参数运行:sample.py ?help 输出结果为:This program prints files……

在与sample.py同一目录下,新建a.txt的记事本文件,内容为:test argv;命令行带参数运行:sample.py a.txt,输出结果为a.txt文件内容:test argv,这里也可多带几个参数,程序会先后输出参数文件内容。

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
python装饰器与递归算法详解
Feb 18 Python
Python装饰器基础详解
Mar 09 Python
Python使用正则表达式抓取网页图片的方法示例
Apr 21 Python
python线程池(threadpool)模块使用笔记详解
Nov 17 Python
python实现简易版计算器
Jun 22 Python
PyQt5每天必学之布局管理
Apr 19 Python
pyqt 实现为长内容添加滑轮 scrollArea
Jun 19 Python
django搭建项目配置环境和创建表过程详解
Jul 22 Python
Python 使用type来定义类的实现
Nov 19 Python
Pycharm安装并配置jupyter notebook的实现
May 18 Python
python 如何用map()函数创建多线程任务
Apr 07 Python
一文搞懂python异常处理、模块与包
Jun 26 Python
python文件操作之目录遍历实例分析
May 20 #Python
Python中使用strip()方法删除字符串中空格的教程
May 20 #Python
python字典排序实例详解
May 20 #Python
在Python中操作字符串之startswith()方法的使用
May 20 #Python
Python中splitlines()方法的使用简介
May 20 #Python
在Python中用split()方法分割字符串的使用介绍
May 20 #Python
Python编程之多态用法实例详解
May 19 #Python
You might like
Warning: session_destroy() : Trying to destroy uninitialized sessionq错误
2011/06/16 PHP
PHP获取短链接跳转后的真实地址和响应头信息的方法
2014/07/25 PHP
数组任意位置插入元素,删除特定元素的实例
2017/03/02 PHP
Javascript this关键字使用分析
2008/10/21 Javascript
jQuery 改变CSS样式基础代码
2010/02/11 Javascript
jQuery结合Json提交数据到Webservice,并接收从Webservice返回的Json数据
2011/02/18 Javascript
基于jquery的15款幻灯片插件
2011/04/10 Javascript
JS跨域总结
2012/08/30 Javascript
用IE重起计算机或者关机的示例代码
2014/03/10 Javascript
jQuery使用andSelf()来包含之前的选择集
2014/05/19 Javascript
JavaScript实现将UPC转换成ISBN的方法
2015/05/26 Javascript
页面间固定参数,通过cookie传值的实现方法
2017/05/31 Javascript
使用Angular CLI进行单元测试和E2E测试的方法
2018/03/24 Javascript
解决Nodejs全局安装模块后找不到命令的问题
2018/05/15 NodeJs
Vue项目中最新用到的一些实用小技巧
2018/11/06 Javascript
微信小程序五子棋游戏的棋盘,重置,对弈实现方法【附demo源码下载】
2019/02/20 Javascript
ES6 Object属性新的写法实例小结
2019/06/25 Javascript
详解JavaScript 异步编程
2020/07/13 Javascript
[01:06:39]DOTA2上海特级锦标赛主赛事日 - 1 胜者组第一轮#1Liquid VS Alliance第三局
2016/03/02 DOTA
[35:27]完美世界DOTA2联赛循环赛 GXR vs FTD BO2第二场 10.29
2020/10/29 DOTA
Python实现单词翻译功能
2017/06/06 Python
Python生成随机密码的方法
2017/06/16 Python
python数据结构链表之单向链表(实例讲解)
2017/07/25 Python
不同版本中Python matplotlib.pyplot.draw()界面绘制异常问题的解决
2017/09/24 Python
python嵌套字典比较值与取值的实现示例
2017/11/03 Python
python 实现分页显示从es中获取的数据方法
2018/12/26 Python
Pycharm新建模板默认添加个人信息的实例
2019/07/15 Python
Python大数据之使用lxml库解析html网页文件示例
2019/11/16 Python
Jupyter notebook如何修改平台字体
2020/05/13 Python
CSS3实现闪烁动画效果的方法
2015/02/09 HTML / CSS
生物制药毕业生自荐信
2013/10/16 职场文书
导游的职业规划书范文
2013/12/27 职场文书
车贷收入证明范本
2014/09/14 职场文书
坚守艰苦奋斗精神坚决反对享乐主义整改措施
2014/09/17 职场文书
学校办公室主任岗位职责
2015/04/01 职场文书
给校长的建议书作文400字
2015/09/14 职场文书