這個Python庫要火,可自動生成命令行接口!

這個Python庫要火,可自動生成命令行接口!

3D Key Word "PYTHON" Glass Style

私信小編007即可自動獲取大量的Python視頻教程以及各類PDF!

如果現在有個工具,不需要你做任何額外工作,不必定義參數、設置幫助信息或寫一個主函數定義代碼如何運行,就能自動把你的代碼轉化成一個 CLI 的工具,你想要麼?


沒錯,說的就是 Python Fire,通過它,你只需從主模塊調用 `Fire` 函數,Python Fire 會接管剩下的一切。它使用檢索將任何 Python 對象(無論是類、對象、字典、函數,甚至是整個模塊)轉化為命令行接口,並輸出標註標籤和文檔,並且指令行界面會隨著編碼的變化保持實時更新。



這個Python庫要火,可自動生成命令行接口!



開源短短一年,Python Fire 已經獲得了 12501 個「star」以及 696 個「fork」

(GitHub項目地址:https://github.com/google/python-fire)


看一個例子,你就知道它有多強大:


#!/usr/bin/env python
import fire
class Example(object):
def hello(self, name='world'):
"""Says hello to the specified name."""
return 'Hello {name}!'.format(name=name)
def main():
fire.Fire(Example)
if __name__ == '__main__':
main()


運行 Fire 函數時將會執行我們的命令。現在我們只需調用 Fire,就可以將 Example 類當作命令行實用程序來使用。


$ ./example.py hello
Hello world!
$ ./example.py hello David
Hello David!
$ ./example.py hello --name=Google
Hello Google!


當然,您可以繼續像使用普通 Python 內容庫那樣使用此模塊,從而能夠從 Bash 和 Python 使用完全相同的代碼。如果你要編寫 Python 內容庫,則試用就不再需要更新 main 方法或客戶端;相反,你只需從命令行運行所試用的內容庫片段。即使內容庫發生變化,命令行工具也能即時更新。

那麼,如何安裝 Python Fire呢?


● 如用 pip,則運行: pip install fire

● 如用 conda, 則運行:conda install fire -c conda-forge

● 如從源碼安裝,則先要 clone 本 repo,然後運行: python setup.py install


如果你已經迫不及待想用 Python Fire,不妨仔細參閱 Python Fire 指南:https://github.com/google/python-fire/blob/master/docs/guide.md 


分享到:


相關文章: