面向人类的软件元数据

about的Python项目详细描述


summary:在一个地方定义项目的元数据,然后 使其在安装时和运行时可用。

让我们以about包为例;我们将 项目文件,在源树中,一个名为about.py的文件 包含项目的元数据:

about
|--- setup.py
|--- README.md
|...
|--- about
|    |--- __init__.py
|    |...
|    |--- about.py

此文件包含元数据(和一些样板):

# coding: utf-8

metadata = dict(
  __name__        = "about",
  __version__     = "5.1.1",
  __license__     = "MIT License",
  __author__      = u"Sébastien Boisgérault <Sebastien.Boisgerault@gmail.com>",
  __url__         = "https://warehouse.python.org/project/about",
  __summary__     = "Software Metadata for Humans",
  __keywords__    = "Python / 2.7, OS independent, software development"
)

globals().update(metadata)

__all__ = metadata.keys()

setup.若要使用此元数据,setup.pyfile包含 代码:

import about
import about.about

info = about.get_metadata(about.about)

# add extra information (contents, requirements, etc.).
info.update(...)

if __name__ == "__main__":
    setuptools.setup(**info)

runtime.元数据存储为 about.about模块。如果我们包含在about/__init__.py文件中 一行

from .about import *

它们在顶级模块中可用:

>>> import about
>>> print about.__name__
about
>>> print about.__version__
5.1.1
>>> print about.__license__
MIT License

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java Android:在ListView上使用setOnItemClickListener   使用Netbeans 7.0连接到SQL Server的java正在挂起   java Spring3依赖项注入不适用于mule   java Flink SQL结果字段与LocalDateTime上请求的类型错误不匹配   java找不到文件的结尾   考虑到NamingStrategy,java有没有办法将字符串转换为JsonNode?   使用Netbeans/ant部署java(命令行)应用程序   java如何修复Spring引导多部分上载中的“所需请求部分不存在”   java在应用程序启动时通过引用获取映射未知目标实体属性异常   java形状旋转问题Java2d   Weblogic服务器上的java ExecuteAndWaitInterceptor问题   JavaSpringBoot:project将图像保存在错误的路径中,并且在使用IDEIntellji打开时不显示图像   类向java接口添加方法   Swing组件上的Java 7泛型   sql server如何从java获取用户名。sql。联系   java如何检查该行是否与正则表达式(regex)冲突?   java如何在spring引导安全中为计数失败登录设置验证登录为false   图像如何在Java中使PNG的白色透明?