日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

谷歌开源 Python Fire:可自动生成命令行接口

發布時間:2023/12/19 python 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 谷歌开源 Python Fire:可自动生成命令行接口 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

為什么80%的碼農都做不了架構師?>>> ??

今天我們很高興地宣布 Python Fire 開源。Python Fire 可從任何 Python 代碼生成命令行接口(command line interfaces (CLIs)),簡單地調用任意 Python 程序中的 Fire 函數以將那個程序自動地轉化為 CLI。該庫可通過 `pip install fire` 從 pypi 獲取,也可參考 Github 上的資源。

Python Fire 自動把你的代碼轉化成一個 CLI,而不需要你做任何額外工作。你不必定義參數、設置幫助信息或寫一個主函數定義代碼如何運行。相反地,你只需從主模塊調用 `Fire` 函數,Python Fire 會接管剩下的一切。它使用檢索將任何 Python 對象(無論是類、對象、字典、函數,甚至是整個模塊)轉化為命令行接口,并輸出標注標簽和文檔,并且指令行界面會隨著編碼的變化保持實時更新。

為了說明這一點,讓我們看一個簡單的例子。

#coding: utf-8import fireclass Example(object):def hello(self, name='world'):"""Says hello to the specified name."""return 'Hello {name}!'.format(name=name)def demo(self, key):return keydef main():fire.Fire(Example)if __name__ == '__main__': main()

執行:

?

$ python fire_demo.py hello Hello world! $ python fire_demo.py demo Fire trace: 1. Initial component 2. Instantiated class "Example" (fire_demo.py:5) 3. Accessed property "demo" (fire_demo.py:10) 4. ('The function received no value for the required argument:', 'key')Type: instancemethod String form: <bound method Example.demo of <__main__.Example object at 0x037C33D0>> File: fire_demo.py Line: 10Usage: fire_demo.py demo KEYfire_demo.py demo --key KEY$ python fire_demo.py demo test

?

當然你可以繼續像使用 Python 普通庫那樣使用這個模塊,從而你可以使用跟 Bash 和 Python 完全一樣的的代碼。如果你正在寫一個 python 庫,那么在試驗這個模塊的時候你就不需要更新你的主要方法(method)或客戶端。僅僅只需要以命令行的方式運行一部分你正在試驗的庫。即使這些庫改變了,該命令行工具仍然保持更新。
在 Google,工程師們使用 Python Fire 從 python 庫生成命令行工具。因為我們有使用 Python 圖像庫(Python Imaging Library/PIL)和 Fire 建立的圖像處理工具。在谷歌大腦,我們使用由 Fire 構建的實驗管理工具,該工具能夠和 Python 或 Bash 同等程度地管理實驗。
每個 Fire CLI 都帶有交互模式。運行 CLI 時使用「-interactive」旗標和命令行以及其他已定義的變量來登錄 IPython REPL。請務必查看 Python Fire 的文檔,從而了解 Fire 更多實用的特征。
因為 Python Fire 十分簡單、普遍和強大,我希望能為你的項目提供一個十分有效的庫。

?

轉載于:https://my.oschina.net/yehun/blog/870925

總結

以上是生活随笔為你收集整理的谷歌开源 Python Fire:可自动生成命令行接口的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。