[英]passing arguments to functions in python using argv
請找到以下腳本
from sys import argv
script, contact_name, contact_no = argv
def operation()
some code goes here
由於我從命令行運行此腳本,如何將contact_name和contact_no傳遞給操作函數? 我正在使用python 2.7
命令行參數作為數組傳遞給程序,第一個通常是程序的位置。 所以我們跳過argv[0]
並轉到其他參數。
此示例不包括錯誤檢查。
from sys import argv
def operation(name, number):
...
contact_name = argv[1]
contact_no = argv[2]
operation(contact_name, contact_no)
從命令行調用:
python myscript.py John 5
您可以使用argparse
編寫用戶友好的命令行界面。
import argparse
parser = argparse.ArgumentParser(description='You can add a description here')
parser.add_argument('-n','--name', help='Your name',required=True)
args = parser.parse_args()
print args.name
要調用腳本,請使用:
python script.py -n a_name
允許任何參數
from sys import argv
def operation(name, number, *args):
print(name , number)
operation(*argv[1:])
從命令行調用:
python myscript.py Om 27
第一個和第二個argv(“Om”和27將分別傳遞給名稱和數字)額外的argv(如果有的話)將* args tupple變量。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.