python 檔案名字: test_getopt.py
python 檔案執行引數:python test_getopt.py -p:8888 -ip:127.0.0.1
test_getopt.py **:
#!/usr/bin/env python
import getopt
import sys
def main():
"""python test_getopt.py -i:127.0.0.1 -p:8888
"""options, args = getopt.getopt(sys.argv[1:], 'p:i:')
for name, value in options:
if name in ('-i'):
# value is 127.0.0.1
print ("value: ".format(value))
if name in ('-p'):
# value is 8888
print ("value: ".format(value))
if __name__ == "__main__":
main()
如果你是這樣執行的**:python test_getopt.py -i:127.0.0.1 -p:8888. 那麼在上邊的**中-i的name值就是127.0.0.1 -p的name值就是8888,getopt.getopt(sys.argv[1:], 'p:i:') 第乙個引數就是取檔名後邊的引數, 第二個引數『p:i:』 就是你命令列的引數是帶乙個'-'符號的, ':' 符號是你的引數必須有值:例如:-i:127.0.0.1.
你也可以加入-h選項,當別人輸入python test_getopt.py -h 的時候會看到help的資訊。**如下
#!/usr/bin/env python
import getopt
import sys
def usage():
print ("**********")
print ("usage:")
print (". ******x")
print (". ******x")
print ("**********")
def main():
"""python test_getopt.py -h
"""options, args = getopt.getopt(sys.argv[1:], 'h')
for name, value in options:
if name in ('-h'):
usage()
if __name__ == "__main__":
main()
上邊的**例項都是引數是帶乙個『-』符號的, 你也可以使用帶『--』符號的引數, **如下:
#!/usr/bin/env python
import getopt
import sys
def usage():
print ("*****==")
print ("usage:")
print ("python test_getopt.py -i:127.0.0.1 -p:8888 66 88 or python test_getopt.py --ip=127.0.0.1 --port=8888 66 88")
print ("*****==")
def main():
"""getopt 模組的用法
"""options, args = getopt.getopt(sys.argv[1:], 'hp:i:', ['help', 'port=', 'ip='])
for name, value in options:
if name in ('-h', '--help'):
usage()
if name in ('-p', '--port'):
print ('value: '.format(value))
if name in ('-i', '--ip'):
print ('value: '.format(value))
for name in args:
# name 的值就是 上邊引數例項裡邊的66和88
print ("name: ".format(name))
if __name__ == "__main__":
main()
Python getopt命令列引數模組
getopt模組專門用來處理命令列引數 getopt模組有兩個函式,兩個屬性 函式 getopt.getopt getopt.gnu getopt 屬性 getopt.error getopt.getopterror getopt.getopt args,shortopts longopts 引數a...
Python getopt的使用詳解
首先,要說明的是python中的getopt模組是專門用來處理命令列引數的。對於一般的命令列引數處理,只需要簡單使用sys.argv就可以實現,舉例說明,建立乙個argvtest.py檔案內容如下 argvtest.py import sys print sys.argv 用命令列的方式執行該檔案p...
python getopt 獲取命令列引數
python 中 getopt 模組,該模組是專門用來處理命令列引數的函式 getopt args,shortopts,longopts args一般是sys.argv 1 shortopts 短格式 longopts 長格式 命令列中輸入 python test.py i 127.0.0.1 p ...