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 struct模块解析
Jun 12 Python
在主机商的共享服务器上部署Django站点的方法
Jul 22 Python
Python使用pygame模块编写俄罗斯方块游戏的代码实例
Dec 08 Python
python2.7实现FTP文件下载功能
Apr 15 Python
Python3使用TCP编写一个简易的文件下载器功能
May 08 Python
Flask框架工厂函数用法实例分析
May 25 Python
Python实现二叉搜索树BST的方法示例
Jul 30 Python
用Python爬取QQ音乐评论并制成词云图的实例
Aug 24 Python
Python环境管理virtualenv&amp;virtualenvwrapper的配置详解
Jul 01 Python
Python中的特殊方法以及应用详解
Sep 20 Python
详解Python模块化编程与装饰器
Jan 16 Python
使用Python开发冰球小游戏
Apr 30 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
PHP实现XML与数据格式进行转换类实例
2015/07/29 PHP
PHPExcel导出2003和2007的excel文档功能示例
2017/01/04 PHP
php获取文件名称和扩展名的方法
2017/02/07 PHP
让iframe框架网页在任何浏览器下自动伸缩
2006/08/18 Javascript
用javascript实现的图片马赛克后显示并切换加文字功能
2007/04/21 Javascript
javascript重复绑定事件造成的后果说明
2013/03/02 Javascript
优化Node.js Web应用运行速度的10个技巧
2014/09/03 Javascript
nodejs教程之环境安装及运行
2014/11/21 NodeJs
jQuery+CSS3实现树叶飘落特效
2015/02/01 Javascript
Javascript实现快速排序(Quicksort)的算法详解
2015/09/06 Javascript
实现非常简单的js双向数据绑定
2015/11/06 Javascript
JQuery日期插件datepicker的使用方法
2016/03/03 Javascript
Bootstrap自动适应PC、平板、手机的Bootstrap栅格系统
2016/05/27 Javascript
jQuery使用DataTable实现删除数据后重新加载功能
2017/02/27 Javascript
Cropper.js 实现裁剪图片并上传(PC端)
2017/08/20 Javascript
Angular 4.0学习教程之架构详解
2017/09/12 Javascript
微信小程序 数据绑定及运算的简单实例
2017/09/20 Javascript
vue.js做一个简单的编辑菜谱功能
2018/05/08 Javascript
JavaScript this绑定过程深入详解
2018/12/07 Javascript
Vue+ElementUI使用vue-pdf实现预览功能
2019/11/26 Javascript
JavaScript实现音乐导航效果
2020/11/19 Javascript
python中使用sys模板和logging模块获取行号和函数名的方法
2014/04/15 Python
TensorFlow平台下Python实现神经网络
2018/03/10 Python
Python操作mongodb数据库的方法详解
2018/12/08 Python
python用requests实现http请求代码实例
2019/10/31 Python
Python序列类型的打包和解包实例
2019/12/21 Python
解决jupyter notebook显示不全出现框框或者乱码问题
2020/04/09 Python
CSS3文本换行word-wrap解决英文文本超过固定宽度不换行
2013/10/10 HTML / CSS
CSS中垂直居中的简单实现方法
2015/07/06 HTML / CSS
详解移动端HTML5页面端去掉input输入框的白色背景和边框(兼容Android和ios)
2016/12/15 HTML / CSS
正规的求职信范文分享
2013/12/11 职场文书
师范教师大学生职业生涯规划范文
2014/01/05 职场文书
党员先锋岗事迹材料
2014/05/08 职场文书
中职生自荐信范文
2014/06/15 职场文书
springBoot基于webSocket实现扫码登录
2021/06/22 Java/Android
总结Java对象被序列化的两种方法
2021/06/30 Java/Android