python命令行解析模塊argparse


說明:本文的知識內容轉自http://blog.csdn.net/mameng1/article/details/54409910

如若侵權,請聯系博主刪除。 在學習TensorFlow模塊時,程序中遇到命令行解析模塊的argparse部分程序,利用python help()之后也沒太弄明白其作用及用法,當看到mameng1博主關於這部分的內容時,覺得清晰明了,為加深自己的印象,為此塊的學習留下痕跡,故轉載了其內容,希望對大家對此模塊的理解有所幫助。


Python中,命令行解析的很好用,


首先導入命令行解析模塊

import argparse
import sys

然后創建對象

parse=argparse.ArgumentParser()

然后增加命令行

parse.add_argument("--learning_rate",type=float,default=0.01,help="initial learining rate")
parse.add_argument("--max_steps",type=int,default=2000,help="max")
parse.add_argument("--hidden1",type=int,default=100,help="hidden1")

對於函數add_argumen()第一個是選項,第二個是數據類型,第三個默認值,第四個是help命令時的說明

然后用

arg=parse.parse_args(sys.argv[1:])

其中參數sys.argv[1:]是命令行語句中從第一個到最后。如在ubuntu下輸入命令行python gg.py --learning_rate 20 --max_steps 10

則sys.argv[1:0]=--learning_rate 20 --max_steps 10

輸出的arg為namespace空間,結果是Namespace(hidden1=100, learning_rate=20.0, max_steps=10)
但是parse_known_args()函數輸出結果為

te 20 --max_steps 10
20.0
10
100

程序:

import argparse
import sys

parse=argparse.ArgumentParser()
parse.add_argument("--learning_rate",type=float,default=0.01,help="initial learining rate")
parse.add_argument("--max_steps",type=int,default=2000,help="max")
parse.add_argument("--hidden1",type=int,default=100,help="hidden1")
flags,unparsed=parse.parse_known_args(sys.argv[1:])
print flags.learning_rate
print flags.max_steps
print flags.hidden1
print unparsed

輸出結果:

20.0
10
100
[]

程序:

20.0
10
100
這兩個函數的功能差不多



注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
  © 2014-2022 ITdaan.com 联系我们: