亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

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

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

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

一、流文本處理

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

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

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

二、argparse 模塊

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

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

下方是使用實例,當不指定參數時,會打印出 help 方法。

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

下方是一個示例格式:

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

使用這種方法傳遞參數,我們就可以運行腳本時:

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

優點非常多,指定參數沒有數量限制,可以設置默認,兼容性 和 擴展性非常好,生產推薦使用該方法。

三、argv 列表

這種方法非常簡單直接,不需要指定參數名,直接使用下標來取參數,請看下方演示:

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

運行結果:

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

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

四、argv + argparse

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

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腳本文件外部傳遞參數的處理方法的詳細內容,更多關于Python腳本外部傳遞參數的資料請關注好吧啦網其它相關文章!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 国产高清资源 | 国产在线视频www片 国产在线视频www色 | 69交性视频| 国产91精品久久久久久久 | 亚洲国产欧美国产第一区 | 操网 | 欧美精品综合一区二区三区 | 噜噜噜在线视频 | 精品一区二区久久久久久久网站 | 日本vs欧美一区二区三区 | 成年男女男免费视频网站不卡 | 日韩免费观看 | 国产v日韩v欧美v精品专区 | 国产特级毛片aaaaaa毛片 | 九九九九热精品免费视频 | 亚洲美女视频网 | 国产精品视频观看 | 亚洲第一区精品观看 | 中文字幕 亚洲精品 | 欧美精品一区二区在线观看播放 | 欧美成人性毛片免费版 | 日本乱人伦片中文字幕三区 | 五月婷婷综合色 | 本道久久综合88全国最大色 | 亚洲精品99久久久久久欧美版 | 欧美日韩中文字幕在线视频 | 午夜精品福利视频 | 亚洲美女爱做色禁图无遮 | 国产精品观看在线亚洲人成网 | 亚洲色图100p| 污污的网站有哪些呢 | 精品久久久日韩精品成人 | 国产成人午夜片在线观看 | 高h喷水荡肉爽文各种场合 高h辣肉各种姿势爽文bl | 爱爱爱免费视频观看在线网站 | 91视频国产免费 | 欧美日韩亚洲人人夜夜澡 | 亚洲国产视频网 | 国产特黄特色的大片观看免费视频 | 亚洲国产精久久小蝌蚪 | 黄色片在线观看网址 |