国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術(shù)文章
文章詳情頁

Python腳本文件外部傳遞參數(shù)的處理方法

瀏覽:140日期:2022-06-18 10:56:56
目錄前言一、流文本處理二、argparse 模塊三、argv 列表四、argv + argparse前言

我們寫的 Python 腳本需要修改參數(shù),當(dāng)我們將腳步上傳到服務(wù)器或者給不會(huì)編程的人用時(shí),會(huì)比較不方便,如果直接可以在外部指定參數(shù),會(huì)非常方便,今天介紹的就是 Python 外部指定參數(shù)的幾種方法。

一、流文本處理

這種方法適用于修改一下文件中的內(nèi)容,配合 Linux 命令非常方便,舉一個(gè)例子,我們需要從一個(gè) binlog 文件中找到該里面最大的事物,我們要配合 mysqldump 來做:

mysqlbinlog -v --base64-output=decode-row ./mysql-bin.000001 | python check_big_event.py

此時(shí)我們需要給腳步的參數(shù)就只有 binlog 文件路徑,那就可以直接使用 sys 將 binlog 文件以流式(一行一行)傳遞給腳步,非常簡單就可以實(shí)現(xiàn),下方是示例腳本👇Python腳本文件外部傳遞參數(shù)的處理方法

二、argparse 模塊

Python 自帶的接收外部參數(shù)的模塊,用好以后也是非常的猴賽雷。下面是一個(gè) MySQL 自動(dòng)化部署腳步,需要指定的參數(shù)有三個(gè),我們均可以使用 --參數(shù)名 方式來指定。

python MySQL_install.py --datadir=/data/mysql_db --basedir=/usr/local --path=mysql-5.7.32-linux-glibc2.12-x86_64.tar.gz

下方是使用實(shí)例,當(dāng)不指定參數(shù)時(shí),會(huì)打印出 help 方法。

Python腳本文件外部傳遞參數(shù)的處理方法

下方是一個(gè)示例格式:

Python腳本文件外部傳遞參數(shù)的處理方法

使用這種方法傳遞參數(shù),我們就可以運(yùn)行腳本時(shí):

python args.py --path=xxx --log=xxx

優(yōu)點(diǎn)非常多,指定參數(shù)沒有數(shù)量限制,可以設(shè)置默認(rèn),兼容性 和 擴(kuò)展性非常好,生產(chǎn)推薦使用該方法。

三、argv 列表

這種方法非常簡單直接,不需要指定參數(shù)名,直接使用下標(biāo)來取參數(shù),請(qǐng)看下方演示:

Python腳本文件外部傳遞參數(shù)的處理方法

運(yùn)行結(jié)果:

Python腳本文件外部傳遞參數(shù)的處理方法

指定參數(shù)時(shí),使用空格隔開就可以,缺點(diǎn)是我們必須安裝腳步順序指定,如果腳本只有一個(gè)參數(shù)或者參數(shù)意義相同,可以用這種方法,參數(shù)較多不建議使用。

四、argv + argparse

argv + argparse 好處就是可以讓腳本得到非常好的封裝,適用于腳步參數(shù)比較多的時(shí)候。下方是一個(gè)演示:

import sysimport argparsedef parse_args(): '''parse args for test''' parser = argparse.ArgumentParser(add_help=False) connect_setting = parser.add_argument_group(’connect setting’) connect_setting.add_argument(’-h’, ’--host’, dest=’host’, type=str, help=’Host the MySQL database server located’, default=’127.0.0.1’) connect_setting.add_argument(’-u’, ’--user’, dest=’user’, type=str, help=’MySQL Username to log in as’, default=’root’) connect_setting.add_argument(’-p’, ’--password’, dest=’password’, type=str, nargs=’*’, help=’MySQL Password to use’, default=’’) connect_setting.add_argument(’-P’, ’--port’, dest=’port’, type=int, help=’MySQL port to use’, default=3306) return parserdef command_line_args(args): need_print_help = False if args else True parser = parse_args() args = parser.parse_args(args) if args.help or need_print_help:parser.print_help()sys.exit(1) return argsif __name__ == ’__main__’: args = command_line_args(sys.argv[1:]) print(args.host)

以上就是Python腳本文件外部傳遞參數(shù)的處理方法的詳細(xì)內(nèi)容,更多關(guān)于Python腳本外部傳遞參數(shù)的資料請(qǐng)關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 久草视频免费在线看 | 久久青草免费线观最新 | 国产女厕偷窥系列在线视频 | 久久爱噜噜噜噜久久久网 | 日韩国产欧美一区二区三区 | 亚洲成人免费在线 | 91精品国产薄丝高跟在线看 | 国产男女免费完整视频 | 亚洲精品国产拍拍拍拍拍 | 美女黄影院 | 色三级大全高清视频在线观看 | 亚洲综合日韩欧美一区二区三 | 亚洲一区二区免费看 | 日本欧美久久久久免费播放网 | 美女被男人cao的爽视频黄 | 欧美在线香蕉在线现视频 | 久久久美女视频 | 亚洲欧美日韩国产专区一区 | 一级毛片不收费 | 日韩美a一级毛片 | 精品国产精品国产 | cao美女 | 国产视频a区 | 手机福利片 | 成人aaaa | aaa级毛片| 一级做a爱过程免费观看 | 亚洲国产精品综合久久 | 91精品成人福利在线播放 | 亚洲精品亚洲人成毛片不卡 | 亚洲国产福利精品一区二区 | 国产高清视频在线播放 | 9久久免费国产精品特黄 | 精品国产91在线网 | 综合 欧美 国产 视频二区 | 国产香蕉成人综合精品视频 | 国产成人精品免费视频网页大全 | 久久99国产精品久久99无号码 | 女黄人东京手机福利视频 | 香港三澳门三日本三级 | 亚洲欧美中文日韩在线v日本 |