Python 命令列引數

2021-12-29 21:35:23 字數 1333 閱讀 9889

命令列引數

1. sys.ar**[1:]為要處理的引數列表, sys.ar**[0]為指令碼名, sys.ar**[1:]過濾指令碼名.

2. 「hc:o:」當選項(h)表示開關狀態時,後面不帶附加引數. 當選項(c:或o:)帶附加引數時,選項字元後面加乙個」:」號.

3. getopt函式返回兩個列表: opts和args. opts是兩元組的列表, 選項列表和引數列表.

4. getopt()的第三個引數[, long_options]為可選的長選項引數, 配合短選項使用, 長選項格式如: –image_dir –image_dir=./hello/

**import sys

import getopt

def main(ar**):

image_dir = '' # 資料夾

code_dir = '' # **資料夾

out_put = '' # 輸出檔案

result = list()

try:

opts, args = getopt.getopt(ar**, hi:c:o:, [image_dir=, code_dir=, out_put=])

except getopt.getopterror:

print 'searchunusedimages.py -i -c -o '

sys.exit(2)

for opt, arg in opts:

if opt == '-h':

print 'searchunusedimages.py -i -c -o '

sys.exit()

elif opt in (-i, --image_dir):

image_dir = arg

elif opt in (-c, --code_dir):

code_dir = arg

elif opt in (-o, --out_put):

out_put = arg

out_file = open(out_put, 'w')

print 'scan start.'

for name, path in search_unused_images(image_dir, code_dir).items():

result.append(path)

for sort_path in sorted(result):

print >> out_file, sort_path

print 'scan over.'

out_file.close()

if __name__ == __main__:

main(sys.ar**[1:])

python 命令列引數

本篇將介紹python中sys,getopt模組處理命令列引數 如果想對python指令碼傳引數,python中對應的argc,argv c語言的命令列引數 是什麼呢?需要模組 sys 引數個數 len sys.argv 指令碼名 sys.argv 0 引數1 sys.argv 1 引數2 sys....

python 命令列引數

python呼叫時,可以直接在命令列中加入呼叫引數,通過sys模組的argv來進行解析,如下 lixinglei bogon someother python param.py port 8080 username lixinglei lixinglei bogon someother vim pa...

python 命令列引數

一 getopt模組 主要用到了模組中的函式 options,args getopt.getopt args,shortopts,longopts 引數args 一般是sys.argv 1 過濾掉sys.argv 0 它是執行指令碼的名字,不算做命令列引數。shortopts 短格式 例如 hp i...