查找项目模块和数据文件(setup.py的包和包数据)。
dephell-discover的Python项目详细描述
查找项目模块和数据文件(packages和package_data用于setup.py)。
用法
获取根,包,包数据,package dir:
frompathlibimportPathfromdephell_discoverimportRootroot=Root(path=Path('../dephell'))root.packages# [Package(path=Path('../dephell/dephell'), root=Path('../dephell')), ...]root.data# {Data(path=Path('../dephell/dephell/templates'), ext='.j2', package=Package(...)), ...}root.package_dir# {'': ''}
包属性:
p=root.packages[-1]p.path# Path('../dephell/dephell/commands')p.root# Path('../dephell')p.module# 'dephell.commands'str(p)# 'dephell.commands'list(p)# [Path('../dephell/dephell/commands/base.py'), ...]
数据属性:
d=next(iter(root.data))d.path# Path('../dephell/dephell/templates')d.ext# .j2d.package# Package(path=Path('../dephell/dephell'), root=...)d.module# 'dephell'# relative path from package root:d.relative# 'templates/*.j2'str(d)# 'templates/*.j2'list(d)# [Path('../dephell/dephell/templates/python.html.j2'), ...]
元信息:
root.metainfo.summary# 'Python project management.'root.metainfo.authors# ['Gram (@orsinium)']root.metainfo.license# 'MIT'root.metainfo.version# '0.7.0'