Python中使用GFlags
- 2020 年 1 月 7 日
- 筆記
在整理我的python代碼時,用到getopt,突然想起來我會Gflags,那麼還是廢棄getopt好了,研究一下gflags在ubuntu+python中的使用,嘻嘻。
一. 一般python代碼結構
二. 主程序main函數
上圖中,主程序和main函數不夠靈活,所以我們定義如下:
三. 安裝Gflags
1. 下載
https://github.com/google/python-gflags
一個75kb的小文件
2. 安裝
sudo python ./setup.py install
3.安裝位置
安裝後的默認位置為:/usr/local/lib/python2.7/dist-packages, 如果使用anaconda,可以複製到ana的文件夾(/usr/local/anaconda2/lib/python2.7/site-packages)中。
4.使用
#!/usr/bin/python import sys import gflags import logging Flags = gflags.FLAGS gflags.DEFINE_string('name', 'func_test', 'test function name') gflags.DEFINE_integer('qps', 0, 'test qps') gflags.DEFINE_boolean('debug', False, 'whether debug') def main(argv): Flags(argv) logging.basicConfig(level=logging.DEBUG, format='%(asctime)s %(filename)s[line:%(lineno)d] %(levelname)s %(message)s', datefmt='%a, %d %b %Y %H:%M:%S', filename='test.log', filemode='w') logging.debug(Flags.name) logging.info(Flags.qps) logging.warning(Flags.debug) if __name__ == "__main__": main(sys.argv)