Python傳參 Argparse模組練習

2021-09-26 14:54:31 字數 1701 閱讀 4521

python3.7 - argparse模組講解

上面的寫的很好!

在test.py中寫入下面**:

import argparse

parser = argparse.argumentparser()

parser.add_argument("echo")

args = parser.parse_args()

print(args.echo)

分別在終端輸入下面三行命令:

基本上可以看出,這裡沒有辦法指定引數名稱,只能隨便輸入乙個值進去,進去了,就被echo這個變數接住了。

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)

程式中使用了type=int來接收數字,即拿到的引數值,直接被轉化為int型別,而不是預設的str型別。輸入其他型別的,會報錯!

import argparse

parser = argparse.argumentparser()

parser.description='喂我兩個數字,我就吐出他們的積'

parser.add_argument("-a", "--para", default=4, help="我是a",type=int)

parser.add_argument("-b", "--parb", default=3, 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)

就可以不輸入值了。

直接執行:

> python argparse_dome.py

我只吃到了a,它是 4

我只吃到了b,它是 3

啊,兩個都吃到啦!積是 12

或者:

> python argparse_dome.py -a=2 -b=4

我只吃到了a,它是 2

我只吃到了b,它是 4

啊,兩個都吃到啦!積是 8

python 函式傳參 傳參和傳引用

首先還是應該科普下函式引數傳遞機制,傳值和傳引用是什麼意思?函式引數傳遞機制問題在本質上是呼叫函式 過程 和被呼叫函式 過程 在呼叫發生時進行通訊的方法問題。基本的引數傳遞機制有兩種 值傳遞和引用傳遞。值傳遞 passl by value 過程中,被調函式的形式引數作為被調函式的區域性變數處理,即在...

Python傳參機制

最近在寫用python寫乙個project,由於半吊子python水平,著實踩了不少坑 從這一篇開始,以後遇到坑就積累下來 望指正。python的傳參機制與我之前學習的語言中傳值 傳引用都不一樣,也可以說是將二者相結合 python傳參的時候傳的的是物件 對於不可變變數,比如int float tu...

Python函式傳參

首先還是應該科普下函式引數傳遞機制,傳值和傳引用是什麼意思?函式引數傳遞機制問題在本質上是呼叫函式 過程 和被呼叫函式 過程 在呼叫發生時進行通訊的方法問題。基本的引數傳遞機制有兩種 值傳遞和引用傳遞。值傳遞 passl by value 過程中,被調函式的形式引數作為被調函式的區域性變數處理,即在...