python len命令_python命令行参数
如果想对python脚本传参数,python中对应的argc, argv(c语言的命令行参数)是什么呢?
需要模块:sys
参数个数:len(sys.argv)
脚本名: sys.argv[0]
参数1: sys.argv[1]
参数2: sys.argv[2]
test.py
import sys
print "脚本名:", sys.argv[0]
for i in range(1, len(sys.argv)):
print "参数", i, sys.argv[i]
>>>python test.py hello world
脚本名:test.py
参数 1 hello
参数 2 world
python中使用命令行选项:
例如我们需要一个convert.py脚本。它的作用是处理一个文件,并将处理后的结果输出到另一个文件中。
要求该脚本满足以下条件:
1.通过-i -o选项来区别参数是输入文件还是输出文件.
>>> python convert.py -i inputfile -o outputfile
2.当不知道convert.py需要哪些参数时,用-h打印出帮助信息
>>> python convert.py -h
getopt函数原形:
getopt.getopt(args, options[, long_options])
convert.py
import sys, getopt
opts, args = getopt.getopt(sys.argv[1:], "hi:o:")
input_file=""
output_file=""
for op, value in opts:
if op == "-i":
input_file = value
elif op == "-o":
output_file = value
elif op == "-h":
usage()
sys.exit()
代码解释:
a) sys.argv[1:]为要处理的参数列表,sys.argv[0]为脚本名,所以用sys.argv[1:]过滤掉脚本名。
b) "hi:o:": 当一个选项只是表示开关状态时,即后面不带附加参数时,在分析串中写入选项字符。当选项后面是带一个附加参数时,在分析串中写入选项字符同时后面加一个":"号。所以"hi:o:"就表示"h"是一个开关选项;"i:"和"o:"则表示后面应该带一个参数。
c) 调用getopt函数。函数返回两个列表:opts和args。opts为分析出的格式信息。args为不属于格式信息的剩余的命令行参数。opts是一个两元组的列表。每个元素为:(选项串,附加参数)。如果没有附加参数则为空串''。
getopt函数的第三个参数[, long_options]为可选的长选项参数,上面例子中的都为短选项(如-i -o)
长选项格式举例:
--version
--file=error.txt
让一个脚本同时支持短选项和长选项
getopt.getopt(sys.argv[1:], "hi:o:", ["version", "file="])
python len命令_python命令行参数相关推荐
- python getopt使用_Python命令行参数解析模块getopt使用实例
这篇文章主要介绍了Python命令行参数解析模块getopt使用实例,本文讲解了使用语法格式.短选项参数实例.长选项参数实例等内容,需要的朋友可以参考下 格式 getopt(args, options ...
- python解析库_Python命令行解析库argparse
原博文 2014-08-13 05:48 − 2.7之后python不再对optparse模块进行扩展,python标准库推荐使用argparse模块对命令行进行解析. 1.example 有一道面试 ...
- python 取值范围的命令_python获取命令行参数的方法
想用python处理一下文件,发现有argv这个用法,搜来学习一下. 如果想对python脚步传参数,那么就需要命令行参数的支持了,这样可以省的每次去改脚步了. 用法是:python xx.py ...
- aptitude 命令_C-命令行参数Aptitude问题与解答
aptitude 命令 C programming Command Line Arguments Aptitude Questions and Answers: In this section you ...
- python len函数_Python 初学者必备的常用内置函数
Python 作为一门高级编程语言,为我们提供了许多方便易用的内置函数,节省了不少开发应用的时间.目前,Python 3.7 共有 69 个内置函数,一些是我们耳熟能详的函数,另一些却不是很常见,这里 ...
- python 参数_Python命令行参数(七)
Python提供了一个getopt模块,用于解析命令行选项和参数. $ python test.py arg1 arg2 arg3 Python sys模块通过sys.argv提供对任何命令行参数的访 ...
- python 命令行参数_Python 命令行参数介绍
Python 提供了 getopt 模块来获取命令行参数. Python 中也可以所用 sys 的 sys.argv 来获取命令行参数: sys.argv 是命令行参数列表. len(sys.argv ...
- python命令行参数 空格_Python 命令行参数
Python 命令行参数 Python 提供了 getopt 模块来获取命令行参数. $ python test.py arg1 arg2 arg3 Python 中也可以使用 sys 的 sys.a ...
- python argv 详解_python解析传入的命令行参数 argv
python解析命令行参数主要有三种方法:sys.argv.argparse解析.getopt解析 方法一:sys.argv -- 命令行执行:python test_命令行传参.py 1,2,3 1 ...
最新文章
- Dockerfile: no such file or directory
- python 语音播放_基于Python编写的语音播放软件
- 使用delphi 开发多层应用(十三)使用Basic4android 直接访问kbmMW server
- Visual Stdio2013 编译错误【error C4996:'scanf':This function or variable may be unsafe.】最简单的解决方法
- 不如安卓?iPhone 12 5G 速度上演“滑铁卢”
- 剑指offer面试题[41]-和为s的两个数VS和为s的连续正数序列
- 学python语言有前途吗-学习python的前景怎么样?
- rs232接口_、 迪文串口屏TTL与主控板RS232电平信号转换方案
- 计算机博士复试英语自我介绍,博士生复试自我介绍的英文
- 漫谈 Clustering (追忆篇): Regularized GMM
- Unity间隔或延迟固定的时间让物体移动一下,绘制线条
- 移动通信-抗衰落技术
- 电信天翼网关接不上服务器无信号咋小,电信天翼网关,自带无线路由功能,但是信号很差,怎样设置新的路由无...
- 前端js ,实现简体繁体语言切换
- 关于打开CMD窗口一闪而退的解决方法
- 查看linux磁盘信息,linux下查看硬盘型号等信息
- 自动化!windows端自动化抢购茅台python脚本
- iOS 数据库升级策略
- CAD二次开发 根据多段线Polyline产生的线段Line需要做进一步处理才可以使用
- [汇编]四字,双字,字,字节以及四进制和32进制