python--argparse超簡入門

首先呢,argparse是一個命令行參數解析模塊!
也就是說呢,它要運行在命令行下,嗯,就是命令行窗口這個頁面。
在這裏插入圖片描述來,接下來做個小測試

首先,新建一個文件,命名爲Test.py,然後敲入如下代碼…

import argparse
parser = argparse.ArgumentParser()
parser.parse_args()

接下來,我們到這個項目的目錄下運行下面的命令

python Test.py --help

然後命令行會打印下面的結果!
在這裏插入圖片描述這個時候,程序已經能夠給我們一定的反饋啦~~~ (-h這個參數表示幫助信息, 現在由於我們還沒有做進一步的工作,所以它只有-h這一個命令啦~)

現在,讓我們添加一個參數吧~ 修改代碼至下面這個樣子

import argparse
parser = argparse.ArgumentParser()
parser.add_argument("echo")
args = parser.parse_args()
print(args.echo)

接下來,我們到這個項目的目錄下分別運行下面的命令看下效果吧~~

python Test.py
python Test.py --help
python Test.py Wow!

biu,結果在這裏~
在這裏插入圖片描述
首先第一條命令,反饋給我們了一個錯誤信息(error: the following arguments are required: echo)告訴我們缺少一個叫做echo的參數。顯然這個參數就是我們剛剛在代碼中創建的那個~
接下里,我們來看第二條命令,我們help了這個文件(相當於我們在問“哎呀,這個文件我要怎麼用呀”,然後程序一本正經的回答“嗯,你需要給我一個叫做echo的參數”)
知道了怎麼使用了,接下來就是正確的使用Test.py這個文件啦。於是我們有了第三個命令,第三個命令中,Wow! 就是我們想要傳給程序的參數。回看代碼,我們使用了print(args.echo) 命令來打印echo的信息,所以最後程序也對我們喊Wow!

接下來我們就可以爲所欲爲了A.A,調整各種參數看看會有什麼神奇的現象發生誒~
首先,我們可以爲Test.py這個腳本文件創建一些描述信息。

parser = argparse.ArgumentParser()
parser.description='叫我出來幹嘛!'

當輸入 –help 時就會跳出來啦
在這裏插入圖片描述
或者輸入兩個數字計算他們的乘積

import argparse
parser = argparse.ArgumentParser()
parser.description='餵我兩個數字,我就吐出他們的積'
parser.add_argument("ParA", help="我是A",type=int)
parser.add_argument("ParB", help="我是B",type=int)
args = parser.parse_args()
print('嗯,好喫!積是',args.ParA*args.ParB)

在這裏插入圖片描述如果我們不想輸入某些參數怎麼辦呀?
簡單!直接在他們名字前添加–就好啦~ 我們對剛剛的程序做個小修改

import argparse
parser = argparse.ArgumentParser()
parser.description='餵我兩個數字,我就吐出他們的積'
parser.add_argument("--ParA", help="我是A",type=int)
parser.add_argument("--ParB", help="我是B",type=int)
args = parser.parse_args()
if args.ParA:
    print("我只喫到了A,它是",args.ParA)
if args.ParB:
    print("我只喫到了B,它是",args.ParB)
if args.ParA and args.ParB:
    print("啊,兩個都喫到啦!積是",args.ParA*args.ParB)

不過這次由於有些參數不確定是否輸入,所以在輸入參數的時候我們需要告訴程序我們想要對哪個參數賦值~
在這裏插入圖片描述每次都要輸入 –ParA或者 –ParB好累啊有木有… 好懶的 T^T,所以我們再做些修改吧,儘可能的偷個懶=-=

import argparse
parser = argparse.ArgumentParser()
parser.description='餵我兩個數字,我就吐出他們的積'
parser.add_argument("-a","--ParA", help="我是A",type=int)
parser.add_argument("-b","--ParB", help="我是B",type=int)
args = parser.parse_args()
if args.ParA:
    print("我只喫到了A,它是",args.ParA)
if args.ParB:
    print("我只喫到了B,它是",args.ParB)
if args.ParA and args.ParB:
    print("啊,兩個都喫到啦!積是",args.ParA*args.ParB)

現在,我們就可以用 -a或者 -b輸入參數啦~似乎也沒有輕鬆多少…都是騙人的T^T
在這裏插入圖片描述
END…

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章