C#中常見的winform控制元件命名規範
阿新 • • 發佈:2022-03-30
1、add_argument和parse_known_args比較
add_argument只接受定義的引數,非定義的報錯; parse_known_args接受非定義不會報錯,會存在陣列中; 建議使用第1種
import argparse parse = argparse.ArgumentParser() parse.add_argument('--flag_int', type=int, default=2, help='flag_int') opt1 = parse.parse_args() print(opt1) #1 print(opt1.flag_int) #2 opt2 = parse.parse_known_args() print(opt2) #3 print(opt2[0]) #4 print(opt2[0].flag_int) # 5 print(opt2[1]) #6
- 以上python xxx.py --flag_int 6輸出如下
Namespace(flag_int=6)
6
(Namespace(flag_int=6), [])
Namespace(flag_int=6)
6
[] - 當輸入python argparse_test.py --flag_int 6 --dd d, parse.parse_args()報錯
usage: argparse_test.py [-h] [--flag_int FLAG_INT]
argparse_test.py: error: unrecognized arguments: --dd d - 註釋opt1 = parse.parse_args(),輸入python argparse_test.py --flag_int 6 --dd d,輸出如下,即parse_known_args輸出包括2個元素的陣列,前面元素和parse_args()一致,後面元素用於記錄沒有見過的引數
(Namespace(flag_int=6), ['--dd', 'd'])
Namespace(flag_int=6)
6
['--dd', 'd']