1. 程式人生 > >Python-argparse-命令行與參數解析

Python-argparse-命令行與參數解析

plus cor -c type variant 參數 gpa bsp iou



import argparse
import numpy as np
import cv2
import os
import numpy.random as npr
from dface.core.utils import IoU
import dface.config as config

def parse_args():
    parser = argparse.ArgumentParser(description=‘Test mtcnn‘,
                                     formatter_class=argparse.ArgumentDefaultsHelpFormatter)

    parser.add_argument(‘traindata_store‘, help=‘dface train data temporary folder,include 12,24,48/postive,negative,part,landmark‘,
                        default=‘../data/wider/‘, type=str)
    parser.add_argument(‘traindata_store_plus‘, help=‘dface train data temporary folder,include 12,24,48/postive,negative,part,landmark‘,
                        default=‘../data/wider/‘, type=str)
    parser.add_argument(‘--anno_file‘, dest=‘annotation_file‘, help=‘wider face original annotation file‘,
                        default=os.path.join(config.ANNO_STORE_DIR,"wider_origin_anno.txt"), type=str)
    parser.add_argument(‘--prefix_path‘, dest=‘prefix_path‘, help=‘annotation file image prefix root path‘,
                        default=‘‘, type=str)




    args = parser.parse_args()
    return args

if __name__ == ‘__main__‘:
    args = parse_args()
    print(args)

  

命令行調用方式:

parser.add_argument(‘traindata_store‘,)這種形式前面沒有--,就說明是必填項,在命令行中直接輸入參數值即可

traindata_store_plus 與 traindata_store_plus 要按順序填充。

(dface) MacBook-Pro:DFace sumeng$ python parse_test.py cc ff --a dd

Namespace(annotation_file=‘dd‘, prefix_path=‘‘, traindata_store=‘cc‘, traindata_store_plus=‘ff‘)

(dface) MacBook-Pro:DFace sumeng$ python parse_test.py ffv ccv --a dd

Namespace(annotation_file=‘dd‘, prefix_path=‘‘, traindata_store=‘ffv‘, traindata_store_plus=‘ccv‘)

  

對於參數前有--的,屬於非必填項,填寫的時候要 --anno_file 參數值 (中間有個空格)或者直接寫 --a 參數值 或者 --ann 參數值 等

(dface) MacBook-Pro:DFace sumeng$ python parse_test.py cc --a dd

Namespace(annotation_file=‘dd‘, prefix_path=‘‘, traindata_store=‘cc‘)

  

Python-argparse-命令行與參數解析