文章目錄
- EntryPoints 介紹
- EntryPoints案例
EntryPoints 介紹
官網參考
-
EntryPoints 是發布的python 項目的一種機制,可以提供對自身項目的切入點,供其他項目代碼使用。在python環境中可以通過
importlib.metadata.entry_points
函數發現所有的切入點插件,并在代碼中加載、調用; -
EntryPoints可以分為三類
- console_scripts, 命令行可執行文件, 可以在bash等命令行執行,來調用python發行軟件包內部的代碼,前臺執行,阻塞命令行窗口;
- gui_scripts,命令行可執行文件,windows系統下執行GUI應用程序時,可以后臺執行,交出命令行的控制權;
命令關聯的python函數代碼不允許接受參數,但可以在函數體內部使用sys.argv解析命令行參數; - appname.plugin.group,項目的插件組(該名稱自定義即可),可以在python環境中使用importlib.metadata.entry_points 自動發現所有已安裝的包提供的插件;
-
EntryPoints 的數據模型,每個切入點對象有三個屬性
- group,切入點所屬的組,組內名稱唯一;定義entry point插件時,會指定組名;