python命令行参数 空格_Python 命令行参数
Python 命令行参数
Python 提供了 getopt 模块来获取命令行参数。
$ python test.py arg1 arg2 arg3
Python 中也可以使用 sys 的 sys.argv 来获取命令行参数:
sys.argv 是命令行参数列表。
len(sys.argv) 是命令行参数个数。
注:sys.argv[0] 表示脚本名。
实例
test.py 文件代码如下:
#!/usr/bin/python
# -*- coding: UTF-8 -*-
import sys
print '参数个数为:', len(sys.argv), '个参数。'
print '参数列表:', str(sys.argv)
执行以上代码,输出结果为:
$ python test.py arg1 arg2 arg3
参数个数为: 4 个参数。
参数列表: ['test.py', 'arg1', 'arg2', 'arg3']
getopt模块
getopt模块是专门处理命令行参数的模块,用于获取命令行选项和参数,也就是sys.argv。命令行选项使得程序的参数更加灵活。支持短选项模式(-)和长选项模式(--)。
该模块提供了两个方法及一个异常处理来解析命令行参数。
getopt.getopt 方法
getopt.getopt 方法用于解析命令行参数列表,语法格式如下:
getopt.getopt(args, options[, long_options])
方法参数说明:
args: 要解析的命令行参数列表。
options : 以字符串的格式定义,options 后的冒号 : 表示如果设置该选项,必须有附加的参数,否则就不附加参数。
long_options : 以列表的格式定义,long_options 后的等号 = 表示该选项必须有附加的参数,不带冒号表示该选项不附加参数。
该方法返回值由两个元素组成: 第一个是 (option, value) 元组的列表。 第二个是参数列表,包含那些没有 - 或 -- 的参数。
另外一个方法是 getopt.gnu_getopt,这里不多做介绍。
Exception getopt.GetoptError
在没有找到参数列表,或选项的需要的参数为空时会触发该异常。
异常的参数是一个字符串,表示错误的原因。属性 msg 和 opt 为相关选项的错误信息。
实例
假定我们创建这样一个脚本,可以通过命令行向脚本文件传递两个文件名,同时我们通过另外一个选项查看脚本的使用。脚本使用方法如下:
usage: test.py -i -o
test.py 文件代码如下所示:
#!/usr/bin/python
# -*- coding: UTF-8 -*-
import sys, getopt
def main(argv):
inputfile = ''
outputfile = ''
try:
opts, args = getopt.getopt(argv,"hi:o:",["ifile=","ofile="])
except getopt.GetoptError:
print 'test.py -i -o '
sys.exit(2)
for opt, arg in opts:
if opt == '-h':
print 'test.py -i -o '
sys.exit()
elif opt in ("-i", "--ifile"):
inputfile = arg
elif opt in ("-o", "--ofile"):
outputfile = arg
print '输入的文件为:', inputfile
print '输出的文件为:', outputfile
if __name__ == "__main__":
main(sys.argv[1:])
执行以上代码,输出结果为:
$ python test.py -h
usage: test.py -i -o
$ python test.py -i inputfile -o outputfile
输入的文件为: inputfile
输出的文件为: outputfile
python命令行参数 空格_Python 命令行参数相关推荐
- python命令行参数 空格_Python - 命令行参数
前言 每个脚本或者命令行程序都可以输入一些参数,通常有两种规范. 短格式,"-"号后面要紧跟一个选项字母,如果还有此选项的附加参数,可以用空格分开,也可以不分开,长度任意,可以用引 ...
- python命令行参数作用_Python命令行参数解析模块argparse
前言 更多内容,请访问我的 个人博客. 以前 optparse 比较火,但是在python2.7版本后,官方不再维护这个模块,转而大力支持 argparse . argparse 模块可以让人轻松编写 ...
- c2665 “initgraph”: 2 个重载中没有一个可以转换所有参数类型_Python 命令行之旅:深入 click 之参数篇...
作者:HelloGitHub-Prodesire 文中涉及的示例代码,已同步更新到 HelloGitHub-Team 仓库 一.前言 在上一篇文章中,我们初步掌握了 click 的简单用法,并了解到它 ...
- python 命令行解析模块_Python命令行解析模块详解
python2.7 怎么解析命令行输入的中文参数 本文实例讲述了python读取命令行参数的方法.分享给大家供大家参考.具体分析如下: 如果想对python脚本传参数,python中对应的argc, ...
- python 拆分excel工作表_Python几行代码轻松拆分表格
Python几行代码轻松拆分表格 作者:梅朵 微信公众号:实用办公编程技能 微信号:Excel-Python 什么?,Python几行代码竟然可以按指定轻松拆分表格? 将test.xls中的数据按地区 ...
- python按行拆分表格_Python几行代码轻松拆分表格
Python几行代码轻松拆分表格 作者:梅朵 微信公众号:实用办公编程技能 微信号:Excel-Python 什么?,Python几行代码竟然可以按指定轻松拆分表格? 将test.xls中的数据按地区 ...
- python中文字符串多余空格_python使用正则表达式去除中文文本多余空格,保留英文之间空格方法详解...
python使用正则表达式去除中文文本多余空格,保留英文之间空格方法详解 在pdf转为文本的时候,经常会多出空格,影响数据观感,因此需要去掉文本中多余的空格,而文本中的英文之间的正常空格需要保留,输入 ...
- python去除字符串两边空格_Python去除字符串两端空格的方法
Python去除字符串两端空格的方法 目的 获得一个首尾不含多余空格的字符串 方法 可以使用字符串的以下方法处理: string.lstrip(s[, chars]) Return a copy of ...
- python去除字符串两边空格_python字符串去除两端空格
python中如何去掉字符串的空格 1.strip():把头和尾的空格去掉 2.lstrip():把左边的空格去掉 3.rstrip():把右边的空格去掉 4.replace('c1','c2'):把 ...
最新文章
- 使用VS2005进行代码覆盖率分析
- [日记]一个人去散步
- 网站权重增加需要做的
- SpringBoot 之 MVC
- 45 jump game II(贪心)
- .NET中生成动态验证码
- 机器学习和人工智能的初学指南
- 19 条法则,教你写出火爆 GitHub 的烂代码!
- 并查集——关押罪犯(洛谷 P1525)
- PID控制的输入量与输出量的关系
- linux c 守护线程,关于守护线程
- 我的职业规划,大家给点意见吧!
- 中文分词与马尔科夫模型之二:隐马尔科夫模型与维特比
- django中间件修改,以及TypeError: object() takes no parameters的异常处理
- java plus in_mybatis plus in方法使用详解
- cad对计算机专业的用处,CAD软件的特点和用途
- Python-Scrapy 获取历史双色球开奖号码
- 基于SimpleLink CC26x2R LaunchPad的RTLS实时定位系统搭建
- Flink-电商用户行为分析(网站独立访客数(UV)的统计)
- 20个优秀手机界面扁平化设计,让你一秒看懂扁平化
热门文章
- usb audio知识点
- Oops快速定位代码行方法
- 如何成为一名真正专业的程序员
- activemq之Windows安装
- 找不到ffmpeg.dll无法继续执行代码怎么办_2020年,小规模增值税3%减按1%征收,那么一般纳税人该怎么办?...
- python语音开发库-各种 Python 库/模块/工具
- python numpy数据类型_Python中numpy的数据类型,python,dtype
- 微信小程序 data中数据值的更改与储存
- 计算机系统导论第九章,计算机系统导论 -- 读书笔记 -- 第三章 程序的机器级表示 (持续更新)...
- 安卓rtmp推流app_直播-腾讯云推流-sdk 播放地址不正确的解决方案---蜻蜓系统-uniapp-flutter通用...