python 传参模块_Python传参初体验,argparse给你专业的感觉

传参无论是程序开发还是脚本,都是必不可少的一个应用方法,通过传参能够让你的程序可以面向大众,最主要的是更灵活,兼容性更好,那么下面就带你体验一下。

点击末尾的了解更多即可访问源码

#Python# #编程语言#

下一篇:

Python传参工具argparse实现可选参数与默认参数值

常见的场景

在Linux中,我们经常会用--help去查看一个工具的使用方法,例如:

a583da9436e7c5a5502e4dfe7d7f74da.png

查看awk命令帮助

通过这个命令(准确点说是参数),我们可以看到软件作者写出的使用帮助,这样能让大众更快的上手,话不多说,我们直接来实践吧!

演示

没有帮助信息的程序

我们首先看一下没有“帮助”的脚本是怎样的。

我们平常使用的程序都是看不到源码的,即使看到源码,大部分人都是看不懂,那么这时候怎样才能让看不懂的人去使用你的工具呢?例如下面这个

8775f60c844b542951a8fac00e3da92c.png

无帮助信息

在没有任何帮助信息也没有源码的情况下,除了作者,没人能知道这个工具怎么用

加上帮助信息

我们可以设置判断用户传入的第一个参数是否需要帮助,例如传入:--help ,然后打印使用帮助,演示如下:

47c69e216c4aa355e23a775853659e82.png

有帮助信息

这样子,你的程序就比较好用了,但是使用这样的传参还是不太专业的,下面就来了解一下什么是专业的传参

ff0798ae32c0960347c4297d09d9d7b1.png

上面的程序源码

使用argparse处理传参

使用过MySQL的人都知道,我们使用命令登录的时候,可以通过-u、-p这种方式传入账号密码,这样的程序是目前普遍采用的一种传参处理方式,在Python种,我们可以通过argparse模块去实现(本文以介绍为主,使用教程不是一篇两篇就能写完的)

b99cf55dc8ffa6e89faada5e0e543483.png

调用帮助信息

e77f098b922184e54e86eb9a6b854d77.png

根据帮助信息传入参数

import argparseif __name__ == '__main__':    #all_info :接收所有传入的信息    all_info = argparse.ArgumentParser(description="设置登录信息")    all_info.add_argument('-u','--user',type=str, help="设置一个用户名,例如 -u li", required=True)    all_info.add_argument('-p','--password', type=str, help="设置一个密码,例如 -p 111111", required=True)    all_info.add_argument('-H','--host', type=str, help="设置主机地址,例如 -H baidu.com ",required=True)    all = all_info.parse_args()    print("传入的所有信息(命名空间)如下:", all)    ##下面开始拆分信息,all.xxx中,xxx为上面定义的--后面的字符串    name = all.user    password = all.password    Host = all.host    print("用户名:[%s]密码:[%s]主机:[%s]" %(name,password,Host))

这样写的脚本/程序看起来是不是更专业,更加的简单了呢?关注我可以获取更多Python,Shell,Linux等相关小知识,对这些感兴趣的也可以看我往期文章

脚本分享-通过python脚本进行批量telnet连通性测试

你写Python还用print?来看下这个更好的工具吧

Python-for与字典的配合,灵活对传参进行修改

Python通过replace实现sed替换功能

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值