python命令行解析之parse_known_args()函數(shù)和parse_args()使用區(qū)別介紹
在python中,命令行解析的很好用,
首先導入命令行解析模塊
import argparse import sys
然后創(chuàng)建對象
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")
對于函數(shù)add_argumen()第一個是選項,第二個是數(shù)據(jù)類型,第三個默認值,第四個是help命令時的說明
然后用arg=parse.parse_args(sys.argv[1:])
其中參數(shù)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()函數(shù)輸出結果為
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
這兩個函數(shù)的功能差不多
相關文章
python 定時器,實現(xiàn)每天凌晨3點執(zhí)行的方法
今天小編就為大家分享一篇python 定時器,實現(xiàn)每天凌晨3點執(zhí)行的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-02-02