欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

Python編寫帶選項的命令行程序方法

系統 1936 0

運行python程序時,有時需要在命令行傳入一些參數。常見的方式是在執行時,在腳本名后直接追加空格分隔的參數列表(例如 python test.py arg0 arg1 arg2),然后在腳本中就可以通過sys.argv獲取所有的命令行參數。

這種方式的優點是傳參方便,參數獲取簡單;缺點是執行腳本時,必須知道參數的順序,并且不能設置默認值,所有參數每次都必須傳入。

還有一種命令行傳參方式是通過帶選項的方式進行傳參(例如python test.py -p0=arg0 -p1=arg1)。

這種方式的優點是參數不用按照固定的順序傳入,并且對于有默認值的參數,可以不傳參數直接使用默認值;缺點是傳入參數時需要額外加上選項。

對于帶選項的命令行參數,可以通過python自帶的getopt模塊來進行解析。

主要方法:

getopt(args, shortopts, longopts = []):解析命令行選項和參數列表。

args是不包括運行程序引用的參數列表,通常來說就是sys.args[1:]。

shortopts是腳本要識別的短選項字母,如果短選項需要參數,需要在字母后加冒號“:”。

longopts是支持的長選項,是一個長選項名稱的列表。選項名稱不包括“-”。需要參數的長選項,需要在后面加一個等號“=”。

返回值包括兩個列表:第一個列表中是(選項,值),如果選項沒有參數,值為空字符串。第二個列表是剝離選項之后的程序參數列表。長項前用“--”,短項前用“-”。

另外要注意的是當進行命令行參數解析時,如果遇到了非選項的參數時,就會停止帶選項參數的解析。

簡單示例

            
#!/usr/bin/python
# -*- coding: gbk -*-
import sys
import getopt
def printUsage():
	print ('''usage: test.py -i 
            
             -o 
            
              
    test.py --in=
              
               --out=
              
                ''')
 
def main():
	inputarg=""
	outputarg=""
	try:
		opts, args = getopt.getopt(sys.argv[1:],"hi:o:",["in=","out="])
	except getopt.GetoptError:
		printUsage()
		sys.exit(-1)
	for opt,arg in opts:
		if opt == '-h':
			printUsage()
		elif opt in ("-i", "--in"):
			inputarg=arg
		elif opt in ("-o","--out"):
			outputarg=arg
	print ('輸入:'+inputarg)
	print ('輸出:'+outputarg)
	print ('其他程序參數:'+",".join(args))
if __name__=="__main__":
	main()

              
            
          

以上這篇Python編寫帶選項的命令行程序方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 精品毛片在线观看 | 欧美精品一区二区在线电影 | 国产在亚洲线视频观看 | 亚洲第五色综合网 | 日韩视频免费 | av激情在线 | 成人破解版 | 欧美久操 | 亚洲第一网站 | 五月婷婷丁香在线观看 | 国产日韩一区在线精品欧美玲 | 成人免费福利 | 97日日摸天天碰免费视频 | 欧美日韩一区二区视频在线观看 | 亚洲欧美日韩高清一区二区三区 | 欧美综合激情网 | 亚洲 欧美 日韩 在线 | 久草在线电影网 | aiai888永久免费视频 | 男人的午夜影院 | 午夜精品久久久久久久99黑人 | lutube成人福利在线观看污 | 黄色资源在线观看 | 欧美日韩亚洲精品国产色 | 亚洲欧美一级久久精品 | 亚洲成人综合视频 | 亚洲午夜日韩高清一区 | 久久精品亚洲成在人线av网址 | 精品国产不卡一区二区三区 | 夜夜天堂 | 色情女教师3波多野结衣 | 久久国产日韩 | 日韩精品一区在线观看 | 日韩一区精品 | 免费看污成人午夜网站 | 一级黄色片a | 亚洲精品久久久久久无码AV | 久草欧美视频 | 久久久久久久久久久久久久久久久久久 | 国产噜噜在线视频观看 | 狠狠干91|