Python之Entry Points

发布方使用Entry Points(入口点)向使用方介绍包中的Python对象,例如函数和类。可扩展的应用和框架通过名字或组(name or
group)在特定的包中或者系统路径中能够访问到的包中查询入口点,然后按照入口点的描述来观察和加载这个Python对象。

入口点隶属于某个组,这个组的命名规则是XXX.XXX的形式。例如setuptools包中有一个组名是distutils.commands的入口点,通过这个组名能够找到distutils扩展中定义的命令。setuptools中的安装脚本将distutils.commands这个组中入口点的名字作为命令来使用。

这个组中入口点的名字可以是动态的,也可以是预先定义的名字。例如blogging框架提供了pre- 或
post-这样的钩子,相应的就会定义“pre_process”和“post_process”这样的入口点名字。

为了对外公布入口点,一个项目需要使用setuptools包,并在安装脚本的setup()函数中提供entry_points参数。这样,入口点将包含在包的元数据中。

一个组中的入口点名字必须唯一。例如distutils扩展能够公布两个不同的distutils.commands入口点组,只要入口点组用不同的名字。

假如引用的两个包中存在相同的入口点,那就需要应用或者框架去决定使用哪一个入口点,比如使用在sys.path中第一个搜索到的包中的入口点。

时间: 2024-10-28 15:00:57

Python之Entry Points的相关文章

Scene is unreachable due to lack of entry points and does not have an identifier for runtime access via -instantiateViewControllerWithIdentifier解决办法

使用Storyboard时出现以下警告: warning: Unsupported Configuration: Scene is unreachable due to lack of entry points and does not have an identifier for runtime access via -instantiateViewControllerWithIdentifier:. 大意是为了在程序中动态访问Scene,需要给其设置一个Storyboard ID,所以给出了

XCode warning:“View Controller” is unreachable because it has no entry points

Unsupported Configuration: "View Controller" is unreachable because it has no entry points, and no identifier for runtime access via -[UIStoryboard instantiateViewControllerWithIdentifier:]. 直译:不支持的设置:"View Controller"是不能被取到的,因为它没有程序入口

Scene is unreachable due to lack of entry points and does not have an identifier for runtime access

使用Storyboard时出现以下警告: warning: Unsupported Configuration: Scene is unreachable due to lack of entry points and does not have an identifier for runtime access via -instantiateViewControllerWithIdentifier:. 大意是为了在程序中动态访问Scene,需要给其设置一个Storyboard ID,所以给出了

Python Tkinter Entry(文本框)

Python学习记录--关于Tkinter Entry(文本框)的选项.方法说明,以及一些示例. 属性(Options) background(bg) borderwidth(bd) cursor exportselection font foreground(fg) highlightbackground highlightcolor highlightthickness insertbackground insertborderwidth insertofftime insertontime

python 之Entry

# Tkinter教程之Entry篇 # Entry用来输入单行文本 from tkinter import * root = Tk() # 创建entry Entry(root, text='input your text here').pack() # 上面的代码目的是创建一个Entry对象,并在Entry上显示'input your text here',运行此代码,并没有看到文本的显示, # 由此可知与Lable和Button不同,Entry的text属性不可以设置Entry的文本 ''

webpack官方文档分析(三):Entry Points详解

1.有很多种方法可以在webpack的配置中定义entry属性,为了解释为什么它对你有用,我们将展现有哪些方法可以配置entry属性. 2.单一条目语法 用法: entry: string|Array<string> webpack.config.js module.exports = { entry: './path/to/my/entry/file.js' }; 上面的写法是下面的简写: module.exports = { entry: { main: './path/to/my/ent

关于storyboard Scene is unreachable due to lack of entry points and does not have an identifier for runtime access报警

1.检查 isinitial viewcontroller 选项是否选中(程序默认加载的控制器). 2.如图,故事版中有个vc 没有任何指向,也会出现该警告.

在IIS上部署基于django WEB框架的python网站应用

django是一款基于python语言的WEB开源框架,本文给出了如何将基于django写的python网站部署到window的IIS上. 笔者的运行环境: Window xp sp3 IIS 5.1 Python 2.7.2 (http://www.python.org/) pywin32-217.win32-py2.7   (python的win32扩展) Django-1.3.1  (https://www.djangoproject.com/) isapi_wsgi-0.4.2-py2.

Python中setuptools做什么用的?

概括 setuptools是 Python Enterprise Application Kit(PEAK)的一个副项目,它 是一组Python的 distutilsde工具的增强工具(适用于 Python 2.3.5 以上的版本,64 位平台则适用于 Python 2.4 以上的版本),可以让程序员更方便的创建和发布 Python 包,特别是那些对其它包具有依赖性的状况. 1.简介 经常接触Python的同学可能会注意到,当需要安装第三方python包时,可能会用到easy_install命令