包/模块的对象样式接口。

picage的Python项目详细描述


Documentation Statushttps://travis-ci.org/MacHu-GWU/picage-project.svg?branch=masterhttps://codecov.io/gh/MacHu-GWU/picage-project/branch/master/graph/badge.svghttps://img.shields.io/pypi/v/picage.svghttps://img.shields.io/pypi/l/picage.svghttps://img.shields.io/pypi/pyversions/picage.svghttps://img.shields.io/badge/STAR_Me_on_GitHub!--None.svg?style=social
https://img.shields.io/badge/Link-Document-blue.svghttps://img.shields.io/badge/Link-API-blue.svghttps://img.shields.io/badge/Link-Source_Code-blue.svghttps://img.shields.io/badge/Link-Install-blue.svghttps://img.shields.io/badge/Link-GitHub-blue.svghttps://img.shields.io/badge/Link-Submit_Issue-blue.svghttps://img.shields.io/badge/Link-Request_Feature-blue.svghttps://img.shields.io/badge/Link-Download-blue.svg

欢迎使用picage文档

picage提供了一个对象样式接口来处理python包模块/文件结构。

使用量

>>>frompicageimportPackage>>>pip=Package("pip")>>>pipPackage(name='pip',path='./venv/lib/python2.7/site-packages/pip')>>>print(pip)Package(name='pip',path='./venv/lib/python2.7/site-packages/pip',sub_packages=['_vendor','commands','compat','models','operations','req','utils','vcs'],sub_modules=['__main__','basecommand','baseparser','cmdoptions','download','exceptions','index','locations','pep425tags','status_codes','wheel'],)# visit sub packages>>>forpackage_name,packageinpip.sub_packages().items():...# visit sub modules>>>formodule_name,moduleinpip.sub_modules().items():...# walk through all sub packages modules>>>forpkg,parent_pkg,sub_pkg_list,sub_module_listinpip.walk():...>>>commands=pip["commands"]# it's a sub package>>>commands=Package("pip.commands")# or you can create it from dot notation>>>commands.parent==pip# visit parent packageTrue>>>pip.parentNone>>>print(commands)Package(name='pip.commands',path='./venv/lib/python2.7/site-packages/pip/commands',sub_packages=[],sub_modules=['check','completion','download','freeze','hash','help','install','list','search','show','uninstall','wheel'],)>>>install=commands["install"]# it's a module>>>install=Module("pip.commands.install")# or you can create it from dot notation# Display package structure>>>pip.pprint()|--pip(pip)|--_vendor(pip._vendor)|--cachecontrol(pip._vendor.cachecontrol)|--caches(pip._vendor.cachecontrol.caches)|--__init__.py(pip._vendor.cachecontrol.caches)|--file_cache.py(pip._vendor.cachecontrol.caches.file_cache)|--redis_cache.py(pip._vendor.cachecontrol.caches.redis_cache)|--__init__.py(pip._vendor.cachecontrol)|--_cmd.py(pip._vendor.cachecontrol._cmd)|--adapter.py(pip._vendor.cachecontrol.adapter)|--cache.py(pip._vendor.cachecontrol.cache)|--compat.py(pip._vendor.cachecontrol.compat)|--controller.py(pip._vendor.cachecontrol.controller)|--filewrapper.py(pip._vendor.cachecontrol.filewrapper)|--heuristics.py(pip._vendor.cachecontrol.heuristics)|--serialize.py(pip._vendor.cachecontrol.serialize)|--wrapper.py(pip._vendor.cachecontrol.wrapper)|--colorama(pip._vendor.colorama)|--__init__.py(pip._vendor.colorama)|--ansi.py(pip._vendor.colorama.ansi)|--ansitowin32.py(pip._vendor.colorama.ansitowin32)|--initialise.py(pip._vendor.colorama.initialise)|--win32.py(pip._vendor.colorama.win32)|--winterm.py(pip._vendor.colorama.winterm)|--distlib(pip._vendor.distlib)|--_backport(pip._vendor.distlib._backport)|--__init__.py(pip._vendor.distlib._backport)|--misc.py(pip._vendor.distlib._backport.misc)|--shutil.py(pip._vendor.distlib._backport.shutil)|--sysconfig.py(pip._vendor.distlib._backport.sysconfig)|--tarfile.py(pip._vendor.distlib._backport.tarfile)|--__init__.py(pip._vendor.distlib)|--compat.py(pip._vendor.distlib.compat)|--database.py(pip._vendor.distlib.database)|--index.py(pip._vendor.distlib.index)|--locators.py(pip._vendor.distlib.locators)|--manifest.py(pip._vendor.distlib.manifest)|--markers.py(pip._vendor.distlib.markers)|--metadata.py(pip._vendor.distlib.metadata)|--resources.py(pip._vendor.distlib.resources)|--scripts.py(pip._vendor.distlib.scripts)|--util.py(pip._vendor.distlib.util)|--version.py(pip._vendor.distlib.version)|--wheel.py(pip._vendor.distlib.wheel)|--html5lib(pip._vendor.html5lib)|--_trie(pip._vendor.html5lib._trie)|--__init__.py(pip._vendor.html5lib._trie)|--_base.py(pip._vendor.html5lib._trie._base)|--datrie.py(pip._vendor.html5lib._trie.datrie)|--py.py(pip._vendor.html5lib._trie.py)|--filters(pip._vendor.html5lib.filters)|--__init__.py(pip._vendor.html5lib.filters)|--alphabeticalattributes.py(pip._vendor.html5lib.filters.alphabeticalattributes)|--base.py(pip._vendor.html5lib.filters.base)|--inject_meta_charset.py(pip._vendor.html5lib.filters.inject_meta_charset)|--lint.py(pip._vendor.html5lib.filters.lint)|--optionaltags.py(pip._vendor.html5lib.filters.optionaltags)|--sanitizer.py(pip._vendor.html5lib.filters.sanitizer)|--whitespace.py(pip._vendor.html5lib.filters.whitespace)|--treeadapters(pip._vendor.html5lib.treeadapters)|--__init__.py(pip._vendor.html5lib.treeadapters)|--genshi.py(pip._vendor.html5lib.treeadapters.genshi)|--sax.py(pip._vendor.html5lib.treeadapters.sax)|--treebuilders(pip._vendor.html5lib.treebuilders)|--__init__.py(pip._vendor.html5lib.treebuilders)|--base.py(pip._vendor.html5lib.treebuilders.base)|--dom.py(pip._vendor.html5lib.treebuilders.dom)|--etree.py(pip._vendor.html5lib.treebuilders.etree)|--etree_lxml.py(pip._vendor.html5lib.treebuilders.etree_lxml)|--treewalkers(pip._vendor.html5lib.treewalkers)|--__init__.py(pip._vendor.html5lib.treewalkers)|--base.py(pip._vendor.html5lib.treewalkers.base)|--dom.py(pip._vendor.html5lib.treewalkers.dom)|--etree.py(pip._vendor.html5lib.treewalkers.etree)|--etree_lxml.py(pip._vendor.html5lib.treewalkers.etree_lxml)|--genshi.py(pip._vendor.html5lib.treewalkers.genshi)|--__init__.py(pip._vendor.html5lib)|--_ihatexml.py(pip._vendor.html5lib._ihatexml)|--_inputstream.py(pip._vendor.html5lib._inputstream)|--_tokenizer.py(pip._vendor.html5lib._tokenizer)|--_utils.py(pip._vendor.html5lib._utils)|--constants.py(pip._vendor.html5lib.constants)|--html5parser.py(pip._vendor.html5lib.html5parser)|--serializer.py(pip._vendor.html5lib.serializer)|--lockfile(pip._vendor.lockfile)|--__init__.py(pip._vendor.lockfile)|--linklockfile.py(pip._vendor.lockfile.linklockfile)|--mkdirlockfile.py(pip._vendor.lockfile.mkdirlockfile)|--pidlockfile.py(pip._vendor.lockfile.pidlockfile)|--sqlitelockfile.py(pip._vendor.lockfile.sqlitelockfile)|--symlinklockfile.py(pip._vendor.lockfile.symlinklockfile)|--packaging(pip._vendor.packaging)|--__init__.py(pip._vendor.packaging)|--__about__.py(pip._vendor.packaging.__about__)|--_compat.py(pip._vendor.packaging._compat)|--_structures.py(pip._vendor.packaging._structures)|--markers.py(pip._vendor.packaging.markers)|--requirements.py(pip._vendor.packaging.requirements)|--specifiers.py(pip._vendor.packaging.specifiers)|--utils.py(pip._vendor.packaging.utils)|--version.py(pip._vendor.packaging.version)|--pkg_resources(pip._vendor.pkg_resources)|--__init__.py(pip._vendor.pkg_resources)|--progress(pip._vendor.progress)|--__init__.py(pip._vendor.progress)|--bar.py(pip._vendor.progress.bar)|--counter.py(pip._vendor.progress.counter)|--helpers.py(pip._vendor.progress.helpers)|--spinner.py(pip._vendor.progress.spinner)|--requests(pip._vendor.requests)|--packages(pip._vendor.requests.packages)|--chardet(pip._vendor.requests.packages.chardet)|--__init__.py(pip._vendor.requests.packages.chardet)|--big5freq.py(pip._vendor.requests.packages.chardet.big5freq)|--big5prober.py(pip._vendor.requests.packages.chardet.big5prober)|--chardetect.py(pip._vendor.requests.packages.chardet.chardetect)|--chardistribution.py(pip._vendor.requests.packages.chardet.chardistribution)|--charsetgroupprober.py(pip._vendor.requests.packages.chardet.charsetgroupprober)|--charsetprober.py(pip._vendor.requests.packages.chardet.charsetprober)|--codingstatemachine.py(pip._vendor.requests.packages.chardet.codingstatemachine)|--compat.py(pip._vendor.requests.packages.chardet.compat)|--constants.py(pip._vendor.requests.packages.chardet.constants)|--cp949prober.py(pip._vendor.requests.packages.chardet.cp949prober)|--escprober.py(pip._vendor.requests.packages.chardet.escprober)|--escsm.py(pip._vendor.requests.packages.chardet.escsm)|--eucjpprober.py(pip._vendor.requests.packages.chardet.eucjpprober)|--euckrfreq.py(pip._vendor.requests.packages.chardet.euckrfreq)|--euckrprober.py(pip._vendor.requests.packages.chardet.euckrprober)|--euctwfreq.py(pip._vendor.requests.packages.chardet.euctwfreq)|--euctwprober.py(pip._vendor.requests.packages.chardet.euctwprober)|--gb2312freq.py(pip._vendor.requests.packages.chardet.gb2312freq)|--gb2312prober.py(pip._vendor.requests.packages.chardet.gb2312prober)|--hebrewprober.py(pip._vendor.requests.packages.chardet.hebrewprober)|--jisfreq.py(pip._vendor.requests.packages.chardet.jisfreq)|--jpcntx.py(pip._vendor.requests.packages.chardet.jpcntx)|--langbulgarianmodel.py(pip._vendor.requests.packages.chardet.langbulgarianmodel)|--langcyrillicmodel.py(pip._vendor.requests.packages.chardet.langcyrillicmodel)|--langgreekmodel.py(pip._vendor.requests.packages.chardet.langgreekmodel)|--langhebrewmodel.py(pip._vendor.requests.packages.chardet.langhebrewmodel)|--langhungarianmodel.py(pip._vendor.requests.packages.chardet.langhungarianmodel)|--langthaimodel.py(pip._vendor.requests.packages.chardet.langthaimodel)|--latin1prober.py(pip._vendor.requests.packages.chardet.latin1prober)|--mbcharsetprober.py(pip._vendor.requests.packages.chardet.mbcharsetprober)|--mbcsgroupprober.py(pip._vendor.requests.packages.chardet.mbcsgroupprober)|--mbcssm.py(pip._vendor.requests.packages.chardet.mbcssm)|--sbcharsetprober.py(pip._vendor.requests.packages.chardet.sbcharsetprober)|--sbcsgroupprober.py(pip._vendor.requests.packages.chardet.sbcsgroupprober)|--sjisprober.py(pip._vendor.requests.packages.chardet.sjisprober)|--universaldetector.py(pip._vendor.requests.packages.chardet.universaldetector)|--utf8prober.py(pip._vendor.requests.packages.chardet.utf8prober)|--urllib3(pip._vendor.requests.packages.urllib3)|--contrib(pip._vendor.requests.packages.urllib3.contrib)|--__init__.py(pip._vendor.requests.packages.urllib3.contrib)|--appengine.py(pip._vendor.requests.packages.urllib3.contrib.appengine)|--ntlmpool.py(pip._vendor.requests.packages.urllib3.contrib.ntlmpool)|--pyopenssl.py(pip._vendor.requests.packages.urllib3.contrib.pyopenssl)|--socks.py(pip._vendor.requests.packages.urllib3.contrib.socks)|--packages(pip._vendor.requests.packages.urllib3.packages)|--ssl_match_hostname(pip._vendor.requests.packages.urllib3.packages.ssl_match_hostname)|--__init__.py(pip._vendor.requests.packages.urllib3.packages.ssl_match_hostname)|--_implementation.py(pip._vendor.requests.packages.urllib3.packages.ssl_match_hostname._implementation)|--__init__.py(pip._vendor.requests.packages.urllib3.packages)|--ordered_dict.py(pip._vendor.requests.packages.urllib3.packages.ordered_dict)|--six.py(pip._vendor.requests.packages.urllib3.packages.six)|--util(pip._vendor.requests.packages.urllib3.util)|--__init__.py(pip._vendor.requests.packages.urllib3.util)|--connection.py(pip._vendor.requests.packages.urllib3.util.connection)|--request.py(pip._vendor.requests.packages.urllib3.util.request)|--response.py(pip._vendor.requests.packages.urllib3.util.response)|--retry.py(pip._vendor.requests.packages.urllib3.util.retry)|--ssl_.py(pip._vendor.requests.packages.urllib3.util.ssl_)|--timeout.py(pip._vendor.requests.packages.urllib3.util.timeout)|--url.py(pip._vendor.requests.packages.urllib3.util.url)|--__init__.py(pip._vendor.requests.packages.urllib3)|--_collections.py(pip._vendor.requests.packages.urllib3._collections)|--connection.py(pip._vendor.requests.packages.urllib3.connection)|--connectionpool.py(pip._vendor.requests.packages.urllib3.connectionpool)|--exceptions.py(pip._vendor.requests.packages.urllib3.exceptions)|--fields.py(pip._vendor.requests.packages.urllib3.fields)|--filepost.py(pip._vendor.requests.packages.urllib3.filepost)|--poolmanager.py(pip._vendor.requests.packages.urllib3.poolmanager)|--request.py(pip._vendor.requests.packages.urllib3.request)|--response.py(pip._vendor.requests.packages.urllib3.response)|--__init__.py(pip._vendor.requests.packages)|--__init__.py(pip._vendor.requests)|--adapters.py(pip._vendor.requests.adapters)|--api.py(pip._vendor.requests.api)|--auth.py(pip._vendor.requests.auth)|--certs.py(pip._vendor.requests.certs)|--compat.py(pip._vendor.requests.compat)|--cookies.py(pip._vendor.requests.cookies)|--exceptions.py(pip._vendor.requests.exceptions)|--hooks.py(pip._vendor.requests.hooks)|--models.py(pip._vendor.requests.models)|--sessions.py(pip._vendor.requests.sessions)|--status_codes.py(pip._vendor.requests.status_codes)|--structures.py(pip._vendor.requests.structures)|--utils.py(pip._vendor.requests.utils)|--webencodings(pip._vendor.webencodings)|--__init__.py(pip._vendor.webencodings)|--labels.py(pip._vendor.webencodings.labels)|--mklabels.py(pip._vendor.webencodings.mklabels)|--tests.py(pip._vendor.webencodings.tests)|--x_user_defined.py(pip._vendor.webencodings.x_user_defined)|--__init__.py(pip._vendor)|--appdirs.py(pip._vendor.appdirs)|--distro.py(pip._vendor.distro)|--ipaddress.py(pip._vendor.ipaddress)|--ordereddict.py(pip._vendor.ordereddict)|--pyparsing.py(pip._vendor.pyparsing)|--re-vendor.py(pip._vendor.re-vendor)|--retrying.py(pip._vendor.retrying)|--six.py(pip._vendor.six)|--commands(pip.commands)|--__init__.py(pip.commands)|--check.py(pip.commands.check)|--completion.py(pip.commands.completion)|--download.py(pip.commands.download)|--freeze.py(pip.commands.freeze)|--hash.py(pip.commands.hash)|--help.py(pip.commands.help)|--install.py(pip.commands.install)|--list.py(pip.commands.list)|--search.py(pip.commands.search)|--show.py(pip.commands.show)|--uninstall.py(pip.commands.uninstall)|--wheel.py(pip.commands.wheel)|--compat(pip.compat)|--__init__.py(pip.compat)|--dictconfig.py(pip.compat.dictconfig)|--models(pip.models)|--__init__.py(pip.models)|--index.py(pip.models.index)|--operations(pip.operations)|--__init__.py(pip.operations)|--check.py(pip.operations.check)|--freeze.py(pip.operations.freeze)|--req(pip.req)|--__init__.py(pip.req)|--req_file.py(pip.req.req_file)|--req_install.py(pip.req.req_install)|--req_set.py(pip.req.req_set)|--req_uninstall.py(pip.req.req_uninstall)|--utils(pip.utils)|--__init__.py(pip.utils)|--appdirs.py(pip.utils.appdirs)|--build.py(pip.utils.build)|--deprecation.py(pip.utils.deprecation)|--encoding.py(pip.utils.encoding)|--filesystem.py(pip.utils.filesystem)|--glibc.py(pip.utils.glibc)|--hashes.py(pip.utils.hashes)|--logging.py(pip.utils.logging)|--outdated.py(pip.utils.outdated)|--packaging.py(pip.utils.packaging)|--setuptools_build.py(pip.utils.setuptools_build)|--ui.py(pip.utils.ui)|--vcs(pip.vcs)|--__init__.py(pip.vcs)|--bazaar.py(pip.vcs.bazaar)|--git.py(pip.vcs.git)|--mercurial.py(pip.vcs.mercurial)|--subversion.py(pip.vcs.subversion)|--__init__.py(pip)|--__main__.py(pip.__main__)|--basecommand.py(pip.basecommand)|--baseparser.py(pip.baseparser)|--cmdoptions.py(pip.cmdoptions)|--download.py(pip.download)|--exceptions.py(pip.exceptions)|--index.py(pip.index)|--locations.py(pip.locations)|--pep425tags.py(pip.pep425tags)|--status_codes.py(pip.status_codes)|--wheel.py(pip.wheel)

安装

picage在pypi上发布,所以您只需要:

$ pip install picage

要升级到最新版本:

$ pip install --upgrade picage

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

推荐PyPI第三方库


热门话题
使用多个参数的枚举   从Oracle到Redis的java复制表   java如何保护tomcat服务器中的db用户名和密码。xml   java如何使用注册密钥保护移动应用程序?   java在什么情况下超类不应该是抽象的?   java Backspace键在macOS上的Scala REPL中不起作用   arduino Java+Uno+RFID:调用方法读取Java中的RFID   带有where语句中集合的java JPA查询   java如何向基于Tyrus注释的客户端添加请求头   java对我的二进制搜索算法的反馈   java重新访问数据库时文件的内容不正确   用户在字符串中输入值后退出While循环(Java)   java如何在Maven中的多个项目之间共享项目依赖关系?   java Close从未在数据库上被明确调用   在java中从文件读入布尔矩阵   Java:如何使用父节点将XML流拆分为小型XML文档。VTDXML