目录
适合人群:
强调实用,学完就提桶跑路不深入研究.(本文针对性较强,不具备普及意义,读者朋友可以配合笔者下面推荐的几篇文章进行了解)
传送门:
https://docs.python.org/zh-cn/3/howto/argparse.html(硬核好文,不过引入部分太冗余,可以往后跳一点)
python学习之argparse模块 - 知乎 (zhihu.com)(浅显易懂)
https://zhuanlan.zhihu.com/p/56922793(较为详细)
前言:
相信点击来的小伙伴大多是基础叫薄弱的.本着不会什么再什么的思想,笔者在学习opencv时,基础较薄弱,在遇到了调用argparse这个库时就百度去了.但查到的讲解却不尽人意,经过一顿尝试后,一葫芦画瓢解决了问题,遂有此章.
预备知识:
argparse模块的作用是用于解析命令行参数(部分朋友用这模块的原因是pycharm太卡,转而用命令行来运行代码.而本文以pycharm的使用为主)
正文:
直接上代码
#引入库
import argparse
#建立解析对象
ap = argparse.ArgumentParser()
#向该对象中添加你要需要的命令行参数和选项
#一个add_argument只能定义一个参数,多的那个参数是为了容错
#一般来说,有几个add_argument就需要传入几个参数
ap.add_argument("-i", "--image", required=True,
help="path to the input image")
#创建parse_args()方法解析对象
args = vars(ap.parse_args())
#利用该上面建立的对象读取文件
image = cv2.imread(args["image"])
碰到相似的代码,一葫芦画瓢就行,此处看代码可以知道,需要输入的参数是一个路径
在pycharm中运行
我们要想在pycharm中运行这个代码需要设置一下配置(configuration)
方法一(以上面的代码为例子):
右击代码所在的程序,选中"Modify Run Configuration",然后在parameters(参数)那行填入" - i image.png"或" --image image.png"(后面一小段看不懂就跳过,不重要)或"-i=image.png"或"--image=image.png"或 "--im image.png"(只要"--"之后加上"i"~"image"都行,但要求是不能中间不能拼错,如"--imege"和 "--ims"就不行)等等(image.png是我项目中的图片)
方法二:
在Run中找到"Edit Configuraiton",然后找到代码所在的程序中(比如这串代码就在"main"之中)
,最后和方法一一样操作即可.
在命令行中运行
首先就是找到存放程序的文件,然后在其中用python打开程序,同时传入参数,参数需要按照add_argument中设定的格式,比如,上面那个程序就需要传入" - i image.png"或" --image image.png"(后面一小段看不懂就跳过,不重要)或"-i=image.png"或"--image=image.png"或 "--im image.png"(只要"--"之后加上"i"~"image"都行,但要求是不能中间不能拼错,如"--imege"和 "--ims"就不行)等等(image.png是我项目中的图片)
(over~)