python中sys.argv参数用法实例分析
作者:久月 发布时间:2021-09-19 20:29:30
标签:python,sys.argv,参数
本文实例讲述了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程序设计有所帮助。


猜你喜欢
- 在电子产品的设计中,大家经常提到简洁是设计的重要元素。可是很多产品,不见得简洁就是第一要素。简洁的设计,必须是在对用户需求透彻理解,引导用户
- 1. 池的概念主线程:相当于生产者,只管向线程池提交任务。 并不关心线程池是如何执行任务的。线程池:相当于消费者,负责接收任务,并将任务分配
- 本文实例讲述了python实现指定字符串补全空格的方法。分享给大家供大家参考。具体分析如下:如果希望字符串的长度固定,给定的字符串又不够长度
- ImageDraw模块提供了图像对象的简单2D绘制。用户可以使用这个模块创建新的图像,注释或润饰已存在图像,为web应用实时产生各种图形。P
- 将一个四位数反向输出massage = '''将一个四位数,反向输出'''N = input
- os即operating system(操作系统),Python 的 os 模块封装了常见的文件和目录操作。os.path模块主要用于文件的
- 连接分为:内连接、外连接、交叉连接 一、内连接——最常用 定义:仅将两个表中满足连接条件的行组合起来作为结果集。 在内连接中,只有在两个表中
- 许可和分发权限Access 2003 Developer Extensions随附的许可协议简化了解决方案或代码段的分发过程。这些协议包括免
- bootstrap-table简介•1.1、bootstrap table简介及特征: &nb
- 前言最近在搜寻资料时,发现了一则10年前的新闻:二维码将成线上线下关键入口。从今天的移动互联网来看,支付收款码/健康码等等与我们息息相关,二
- mysql 时间转换函数的用法DAYOFWEEK(date) 返回日期date的星期索引(1=星期天,2=
- Html:<!doctype html><html><head><meta charset=&qu
- 什么是固件Fixture 翻译成中文即是固件的意思。它其实就是一些函数,会在执行测试方法/测试函数之前(或之后)加载运行它们,常见的如接口用
- 关系型数据库:以表作为实体,以主键和外键关系作为联系的一种数据结构。主键:在关系型数据库中,用一个唯一的标识符来标志每一行,这个标识符就是主
- MySQL中,常常会看到一些关于动态字符串的处理,列如:DYNAMIC_STRING。为了记录动态字符串的实际长度,缓冲区的最大长度,以及每
- 1)去重指定多列去重,这是在dataframe没有独一无二的字段作为PK(主键)时,需要指定多个字段一起作为该行的PK,在这种情况下对整体数
- 一、查看可用字体import pygameprint(pygame.font.get_fonts())二、设置字体1.使用系统字体self.
- scrapy爬虫框架介绍scrapy不是一个简单的函数功能库,而是一个爬虫框架爬虫框架:爬虫框架是实现爬虫功能的一个软件结构和功能组件的集合
- python命名规则命名风格python几种不同命名风格驼峰式命名法(WjW)混合式命名法(wjWj)大写(WJWJWJ)或大写加下划线(W
- 本文介绍了一个较为通用的获取 radio 值的方法,希望对新手有用。 <script type="text/javascri