文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

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

2024-04-02 19:55

关注

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中的正则表达式

 正则表达式简介

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

Re模块

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

re.match方法

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

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

参数说明:

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

以下示例是没有标志位的调用 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 模块中关于正则表达式的方法
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命令行参数的资料请关注编程网其它相关文章!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     801人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     348人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     311人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     432人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     220人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯