python解析命令列讀取引數有兩種方式:sys.ar**和argparse
如果指令碼很簡單或臨時使用,沒有多個複雜的引數選項,可以直接利用sys.ar**將指令碼後的引數依次讀取(讀進來的預設是字串格式)。
import sys
print
("輸入的引數為:%s"
% sys.ar**[1]
)
命令列執行效果:
>python demo.py 1
輸入的引數為:
1
如果引數很多,比較複雜,並且型別不統一,那麼argparse可以很好的解決這些問題,下面乙個例項解釋了argparse的基本使用方法
import argparse
# description引數可以用於描述指令碼的引數作用,預設為空
parser=argparse.argumentparser(description=
"a description of what the program does"
)parser.add_argument(
'--toy'
,'-t'
,action=
'store_true'
,help
='use only 50k samples of data'
)parser.add_argument(
'--num_epochs'
,choices=[5
,10,20
],default=5,
type
=int
,help
='number of epochs.'
)parser.add_argument(
"--num_layers"
,type
=int
, required=
true
,help
="network depth."
)args=parser.parse_args(
)print
(args)
print
(args.toy,args.num_epochs,args.num_layers)
命令列執行效果:
>python demo.py -
-num_epochs 10
--num_layers 10
namespace(num_epochs=
10, num_layers=
10, toy=
false
)false
1010
Python中的argparse用法
2 正文 3 結語 1 argparse基本用法,2 argparse簡要用法總結,最近在看python 的時候看到了別人使用 import argparseimport argparse defmain parser argparse.argumentparser demo of argparse...
Python 中argparse模組的使用
閱讀原文 python解析命令列讀取引數有兩種方式 sys.argv和argparse 如果指令碼很簡單或臨時使用,沒有多個複雜的引數選項,可以直接利用sys.argv將指令碼後的引數依次讀取 讀進來的預設是字串格式 import sys print 輸入的引數為 s sys.argv 1 命令列執...
python中argparse模組的使用
有兩個檔案乙個是 檔案1 sync shop source bimer.sh 檔案2 sync shop source bimer.py 在sync shop source bimer.sh 中呼叫sync shop source bimer.py 檔案1中產生的檔案要傳遞給檔案2 檔案1中的內容 ...