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 相关文章推荐
python3使用urllib示例取googletranslate(谷歌翻译)
Jan 23 Python
Python基于回溯法子集树模板解决马踏棋盘问题示例
Sep 11 Python
对python中的乘法dot和对应分量相乘multiply详解
Nov 14 Python
Python面向对象程序设计OOP入门教程【类,实例,继承,重载等】
Jan 05 Python
Python OpenCV对本地视频文件进行分帧保存的实例
Jan 08 Python
python 生成器和迭代器的原理解析
Oct 12 Python
python使用docx模块读写docx文件的方法与docx模块常用方法详解
Feb 17 Python
Python实现清理微信僵尸粉功能示例【基于itchat模块】
May 29 Python
Python通过kerberos安全认证操作kafka方式
Jun 06 Python
Keras 数据增强ImageDataGenerator多输入多输出实例
Jul 03 Python
python将数据插入数据库的代码分享
Aug 16 Python
解决jupyter notebook启动后没有token的坑
Apr 24 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
Cappuccino 卡布其诺咖啡之制作
2021/03/03 冲泡冲煮
php中sql注入漏洞示例 sql注入漏洞修复
2014/01/24 PHP
php视频拍照上传头像功能实现代码分享
2015/10/08 PHP
常用PHP数组排序函数归纳
2016/08/08 PHP
微信 getAccessToken方法详解及实例
2016/11/23 PHP
PHP安装扩展mcrypt以及相关依赖项深入讲解
2021/03/04 PHP
Aster vs Newbee BO5 第一场2.19
2021/03/10 DOTA
获取JavaScript用户自定义类的类名称的代码
2007/03/08 Javascript
使用JQUERY Tabs插件宿主IFRAMES
2010/01/01 Javascript
javascript拖拽效果延伸学习
2016/04/04 Javascript
javascript如何创建对象
2016/08/29 Javascript
BootStrap实现手机端轮播图左右滑动事件
2016/10/13 Javascript
JavaScript面向对象分层思维全面解析
2016/11/22 Javascript
三种方式实现瀑布流布局
2017/02/10 Javascript
js利用for in循环获取 一个对象的所有属性以及值的实例
2017/03/30 Javascript
移动端效果之Swiper详解
2017/10/09 Javascript
什么是Vue.js框架 为什么选择它?
2017/10/17 Javascript
微信小程序中使用ECharts 异步加载数据的方法
2018/06/27 Javascript
关于vue编译版本引入的问题的解决
2018/09/17 Javascript
原生js实现滑块区间组件
2021/01/20 Javascript
[02:20]DOTA2英雄基础教程 黑暗贤者
2013/12/19 DOTA
在Windows服务器下用Apache和mod_wsgi配置Python应用的教程
2015/05/06 Python
Python 多线程的实例详解
2017/09/07 Python
Python爬虫天气预报实例详解(小白入门)
2018/01/24 Python
Python3安装模块报错Microsoft Visual C++ 14.0 is required的解决方法
2020/07/28 Python
python excel和yaml文件的读取封装
2021/01/12 Python
Pretty Little Thing爱尔兰:时尚女性服饰
2017/03/27 全球购物
美国LOGO设计公司:The Logo Company
2018/07/16 全球购物
法国购买二手电子产品网站:Asgoodasnew
2020/03/27 全球购物
Linux如何压缩可执行文件
2014/03/27 面试题
工程部主管岗位职责
2013/11/17 职场文书
2014年全国爱牙日宣传活动方案
2014/09/21 职场文书
个人创业事迹材料
2014/12/30 职场文书
思想品德评语大全
2014/12/31 职场文书
一个独生女的故事观后感
2015/06/04 职场文书
vue postcss-px2rem 自适应布局
2022/05/15 Vue.js