Python getopt 模块
Python getopt 模块
getopt模块,是配合sys.argv使用的一个扩展。他可以接收终端的参数。格式扩展为“-n” 或 “--n”两种类型,下面是具体解释。
使用
improt getopt
import sys # 例一
opts,args = getopt.getopt(sys.argv[1:], "ho:", ["help", "output="]) # 例二
opts,args = getopt.getopt(sys.argv[1:], "-h-o", ["help", "output"])
解释
语法格式为 getopt.getopt(sys.argv[1:],...),
getopt.getopt 为固定语法格式。
sys.argv[1:] 不把默认文件作为传入参数。
"ho:"/"-h-o":传入参数终端格式为“-n”,代码可简写为"nn",也可全写"-n-n","n:"带个":"符号表示,后面还要传一个值(不然会出错)。
["nnn","nnn="]:传入参数终端格式为“--nnn”,“nnn=”这个带“=”符号的好使,后面还要传一个值 比如 “ --nnn value”(不然会出错)。
分别有两个传入变量:opts,args :
opts:表示传入的参数,已list传入,参数与value,没有设置value默认为"", 没有字符。
args:表示传入错误的参数,多出的一些错误格式参数会被这个args已list格式传入。
#
# python3 test2.py -v --filename filename
# import getopt
import sys opts,args = getopt.getopt(sys.argv[1:],'-h-f:-v',['help','filename=','version'])
print(opts)
for opt_name,opt_value in opts:
if opt_name in ('-h','--help'):
print("[*] Help info")
sys.exit()
if opt_name in ('-v','--version'):
print("[*] Version is 0.01 ")
sys.exit()
if opt_name in ('-f','--filename'):
fileName = opt_value
print("[*] Filename is ",fileName)
# do something
sys.exit()
案例
Python getopt 模块的更多相关文章
- python getopt模块使用方法
python中 getopt 模块,是专门用来处理命令行参数的 getop标准格式: 函数getopt(args, shortopts, longopts = []) shortopts 是短参数 ...
- [转]Python 命令行参数和getopt模块详解
FROM : http://www.tuicool.com/articles/jaqQvq 有时候我们需要写一些脚本处理一些任务,这时候往往需要提供一些命令行参数,根据不同参数进行不同的处理,在Pyt ...
- Python 命令行参数和getopt模块详解
有时候我们需要写一些脚本处理一些任务,这时候往往需要提供一些命令行参数,根据不同参数进行不同的处理,在Python里,命令行的参数和C语言很类似(因为标准Python是用C语言实现的).在C语言里,m ...
- Python之getopt模块
1.getopt——C风格命令行解析 http://docs.python.org/2.7/library/getopt.html#module-getopt getopt.getopt(args, ...
- python通过getopt模块获取执行命令参数
python脚本和shell脚本一样可以获取命令行的参数,根据不同的参数,执行不同的逻辑处理. 通常我们可以通过getopt模块获得不同的执行命令和参数. 下面我通过新建一个test.py的脚本解释下 ...
- Python 中的 getopt 模块
sys 模块:可以得到用户在命令行输入的参数 getopt模块:专门用来处理输入的命令行参数 用户在命令行中输入参数,sys模块得到该参数,getopt模块处理该参数 sys模块: import sy ...
- python获取命令行传参的两种种常用方法argparse解析getopt 模块解析
方法一:argparse解析 #!/usr/bin/env python3 # -*- coding:utf-8 -*- # @Time: 2020/5/20 10:38 # @Author:zhan ...
- python标准库介绍——26 getopt 模块详解
==getopt 模块== ``getopt`` 模块包含用于抽出命令行选项和参数的函数, 它可以处理多种格式的选项. 如 [Example 2-23 #eg-2-23] 所示. 其中第 2 个参数指 ...
- python 各模块
01 关于本书 02 代码约定 03 关于例子 04 如何联系我们 1 核心模块 11 介绍 111 内建函数和异常 112 操作系统接口模块 113 类型支持模块 114 正则表达式 115 语言支 ...
随机推荐
- LinqMethod 实现 LeftJoin
LinqMethod 实现 LeftJoin Intro 有时候我们想实现 leftJoin 但是 Linq 提供的 Join 相当于是 INNER JOIN,于是就打算实现一个 LeftJoin 的 ...
- oracle学习笔记(十二) 查询练习(二) 高级查询
高级查询练习 /*--------------------------------------------- 分组查询 -------------------------------------*/ ...
- 在Asp.net Razor Pages/MVC程序中集成Blazor
今天试了一下在Asp.net core Razor Pages/MVC程序中集成Blazor(Server-side),还是可以完美整合的,这里以Razor Pages为例(.net core 3.1 ...
- 【LeetCode】650. 只有两个键的键盘
只有两个键的键盘 最初在一个记事本上只有一个字符 'A'.你每次可以对这个记事本进行两种操作: 1.Copy All (复制全部) : 你可以复制这个记事本中的所有字符(部分的复制是不允许的). 2. ...
- 将vue2.9.6升级到vue3.0
vue2.9.6没有ui界面可以用,直接使用yarn global add @cli没用,还是2.9.6版本 借鉴博客: https://juejin.im/post/5bf7d67c51882518 ...
- linux环境下安装selenium+chrom+chromdriver.exe
原文:https://blog.csdn.net/yoyocat915/article/details/80580066 原文:https://blog.csdn.net/hanxue6898/art ...
- webpack中使用jquery
首先我只有一个js文件,只用在那个文件中引入,因此 一 下载包 npm install jquery --save 二 在使用的jquery的文件顶部输入js代码 import $ from 'jq ...
- bay——安装_RAC11g_LC_测试环境-rehat6+udev.txt
★★★____★☆★〓〓〓〓→VMware vSphere Client6.0 https://10.20.4.200/ 下载Vwmare IP:10.20.4.200-------账号:root-- ...
- scrapy爬虫具体案例详细分析
scrapy爬虫具体案例详细分析 scrapy,它是一个整合了的爬虫框架, 有着非常健全的管理系统. 而且它也是分布式爬虫, 它的管理体系非常复杂. 但是特别高效.用途广泛,主要用于数据挖掘.检测以及 ...
- Apache(基于主机名)
1.配置hosts文件 (1).hosts文件作用是定义IP地址与主机名的映射关系,即强制将某个主机名地址解析到指定的IP地址. (2)输入命令“vi /etc/hosts”,打开hosts文件,输入 ...