Python脚本开发中的命令行参数及传参示例详解

 更新时间:2022年07月28日 15:15:21   作者:Java学术趴  
这篇文章主要为大家介绍了Python脚本开发中的命令行参数及传参示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

sys模块

在使用python开发脚本的时候,作为一个运维工具,或者是其他工具需要在接受用户参数运行时,这里就可以用到命令行传参的方式,可以给使用者一个比较友好的交互体验。

python可以使用 sys 模块中的 sys.argv 命令来获取命令行参数,其中返回的参数是一个列表

在实际开发中,我们一般都使用命令行来执行 python 脚本

使用终端执行python文件的命令:python 指定文件名

import sys
# 使用 sys.argv 来获取命令行参数
# 在终端使用 python 指定python文件名 来执行python文件
print('命令行参数的个数%s' % len(sys.argv))
# 命令行参数的个数1
print('命令行参数%s' % sys.argv)
# 命令行参数['index.py']
# 因为此时只有一个参数,那么就是这个python文件
# 终端执行的命令为:python index.py

argv返回命令行参数的一个列表,其中第一个元素是 py的文件名。如果不想获取到文件名,那么完全可是使用切片的方式,因为命令行返回的结果是一个列表,完全可以使用切片的方式。

import sys
# 使用切片的方式去除文件名
print('命令行参数%s' % sys.argv[1:])
# 命令行参数['1', '2', '3', '4', '5']
# 终端执行的命令为:python index.py 1 2 3 4 5
# 在终端一次输入多个参数的时候,中间不需要使用逗号隔开

sys.argv 只提供了比较简单的命令行参数获取方式,并没有提供命令行提示。无法做到像liunx命令行一样,可以给使用者提供help帮助。

argparse模块

概念:

argparse模块可以轻松的编写用户友好的命行界面。该程序定义了他需要的参数,argparse并将找出如何解析这些参数 sys.argv。

该argparse模块还会自动生成帮助和用法消息,并在用户给出的程序无效参数时发生异常。

Python中的正则表达式

 正则表达式简介

  • 正则表达式(Regular Exception),又称规则表达式。正则表达式通常用来检索、替换那些符合某个模式(规则)的文本。
  • 不论是何种语言,都离不开正则表达式,大多数软件都会使用到正则表达式。
  • 在 python 中使用正则表达式只需要引入一个 Re模块。

注意:先有的正则表达式,后有的 Re 模块。

Re模块

我们使用re模块来掌握正则表达式的常用匹配规则

re.match方法

re.match尝试从字符串的起始位置匹配一个规则,匹配成功就返回match对象,否则返回None。可以使用group()获取匹配成功的字符串。

语法: re.match(pattern,string,flag=0)

参数说明:

  • pattern : 匹配的正则表达式
  • string : 要匹配的字符串
  • flags : 标志位,用于控制正则表达式的匹配方式,如:是否区分大小写,多行匹配等等。

注意:这个模块是从起始位置进行匹配的,否则会报错。

以下示例是没有标志位的调用 match 函数

# 测试 re 模块中关于正则表达式的方法
import re
saying: str = 'life is short, i use Python'
# 使用 re.match 方法获取匹配成功的字符串
res1 = re.match('L', saying)
# res1等于None,match只能匹配以 xxx 开头的子字符串,因为saying是以小写字母l开头的
# 所以匹配失败。
res2 = re.match('l', saying)
print(res2.group())
# l,匹配成功
res3 = re.match('li', saying)
print(res3.group())
# li

flags可选的标志位

  • 如果同时存在多个标志位使用 | 分隔,比如re.L | re.M
# 测试 re 模块中关于正则表达式的方法
import re
saying: str = 'life is short, i use Python'
# 使用 re.match 方法获取匹配成功的字符串,给定标志位(忽略大小写)
res = re.match('L', saying, re.I)
print(res.group())
# l

常用的匹配规则

以上就是Python脚本开发中的命令行参数及传参示例详解的详细内容,更多关于Python命令行参数的资料请关注脚本之家其它相关文章!

相关文章

  • python创建exe文件的实现步骤

    python创建exe文件的实现步骤

    本文主要介绍了python创建exe文件的实现步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-09-09
  • Python的Django REST框架中的序列化及请求和返回

    Python的Django REST框架中的序列化及请求和返回

    这篇文章主要介绍了Python的Django REST框架中的序列化及请求和返回,使用Django REST来实现RESTful web service非常方便和强大,需要的朋友可以参考下
    2016-04-04
  • Python+Selenium+Pytesseract实现图片验证码识别

    Python+Selenium+Pytesseract实现图片验证码识别

    这篇文章主要介绍了利用Python+Selenium+Pytesseract实现图片验证码识别,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2022-01-01
  • python实现在每个独立进程中运行一个函数的方法

    python实现在每个独立进程中运行一个函数的方法

    这篇文章主要介绍了python实现在每个独立进程中运行一个函数的方法,涉及Python操作进程的相关技巧,需要的朋友可以参考下
    2015-04-04
  • Python操作串口的方法

    Python操作串口的方法

    这篇文章主要介绍了Python操作串口的方法,以一个简单实例分析了Python操作串口echo输出的方法,需要的朋友可以参考下
    2015-06-06
  • Python合并ts文件至mp4格式及解密教程详解

    Python合并ts文件至mp4格式及解密教程详解

    m3u8准确来说是一种索引文件,使用m3u8文件实际上是通过它来解析对应的放在服务器上的视频网络地址,从而实现在线播放。本文给大家介绍Python合并ts文件至mp4格式及解密教程,需要的朋友参考下吧
    2021-07-07
  • Python自动化处理Excel数据的操作过程

    Python自动化处理Excel数据的操作过程

    在实际数据处理和分析过程中,经常会遇到需要从大量数据中提取出特定日期范围内的信息的需求,本文将介绍如何使用Python的pandas库来处理Excel文件,感兴趣的朋友跟随小编一起看看吧
    2023-11-11
  • pycharm设置当前工作目录的操作(working directory)

    pycharm设置当前工作目录的操作(working directory)

    今天小编就为大家分享一篇pycharm设置当前工作目录的操作(working directory),具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-02-02
  • Python数据可视化绘图实例详解

    Python数据可视化绘图实例详解

    数据可视化是指用图形或表格的方式来呈现数据。图表能够清楚地呈现数据性质, 以及数据间或属性间的关系。本文为大家分享了几个Python数据可视化绘图的实例,感兴趣的可以了解一下
    2022-05-05
  • pycharm 安装JPype的教程

    pycharm 安装JPype的教程

    这篇文章主要介绍了pycharm 安装JPype的步骤,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-08-08

最新评论