Skip to main content

dist-info - получить информацию об установленном дистрибутиве

Project description

NAME

dist-info - получить информацию об установленном дистрибутиве

VERSION

0.1.1

SYNOPSIS

# Устанавливаваем некий модуль:
$ pip3 install pytest

# И затем в питоне:
# @@ examples.py
from dist_info import dists, \
	src, src_path, dist_info_paths, egg, dist_path, \
	metadata, files, modules, \
	modules_in_dir, modules_from, \
	imports, imports_from

# Список всех установленных пакетов:
packages = dists()
# -> ['Brlapi', 'Dumper', ...]

DIST_NAME = 'pytest'

# Получаем пути к каталогам с файлами пакета:
src_dirs = src(DIST_NAME)
# -> ['/home/dart/.local/lib/python3.6/site-packages/pytest']

# Получаем путь к последнему каталогу с файлами пакета:
src_dir = src_path(DIST_NAME)
# -> '/home/dart/.local/lib/python3.6/site-packages/pytest'

# Обычно у пакета только один такой каталог, но у пакетов cryptography или bcrypt, например, по несколько.

# Получаем каталоги с подкаталогами пакета и путь к метаинформации
# (может быть как файлом, так и каталогом):
dist_dir, egg_dir = dist_info_paths(DIST_NAME)
# -> '/home/dart/.local/lib/python3.6/site-packages',
#    '/home/dart/.local/lib/python3.6/site-packages/pytest-5.4.1.dist-info'

# Для краткости были сделаны функции dist_path и egg, возвращающие dist_dir и egg_dir соответственно:

dist_dir = dist_path(DIST_NAME)
# -> '/home/dart/.local/lib/python3.6/site-packages'

egg_dir = egg(DIST_NAME)
# -> '/home/dart/.local/lib/python3.6/site-packages/pytest-5.4.1.dist-info'

# Получаем файлы
package_files = files(DIST_NAME)
# [ '/home/dart/.local/lib/python3.6/site-packages/../../../bin/py.test',
#   '/home/dart/.local/lib/python3.6/site-packages/../../../bin/pytest', ... ]

# Получаем модули пакета:
package_modules = modules(DIST_NAME)
# -> ['_pytest', '_pytest._argcomplete', ...]

# Получаем словарь с краткой информацией о пакете:
meta_dict = metadata(DIST_NAME)
# -> {'Name': 'pytest', ...}

# Получаем модули в указанном каталоге:
the_modules = modules_in_dir(".")
# -> ['x', 'x.y', 'x.y.z', ...]

# Получаем подмодули модуля (например, io.six - ищется в sys.path):
the_modules = modules_from("io.six")
# -> ['io.six.bar', 'io.six.bar.baz', ...]

# импортирует все указанные модули в текущий модуль (тут в examples.py)
# остальные параметры принимает те же, что и __import__
# imports(modules, globals=None, locals=None, fromlist=(), level=0)
# возвращает список результатов __import__
import_returns = imports(the_modules)

# Есть сокращение для imports( modules_from(module), *av, **kw ):
the_modules, import_returns = imports_from("io.six")

DESCRIPTION

Позволяет получить модули установленного пакета, файлы и пути к каталогу с метаинформацией пакета, так и каталогу в котром стоит пакет.

Распознаются dist-info, egg-info и egg-link.

В дистрибутив входит одноимённая утилита:

Вывести список каталогов с модулями (sys.path):
$ dist -s
$ dist --syspath

Вывести все установленные дистрибутивы:
$ dist-info

Вывести сводную информацию о дистрибутиве:
$ dist-info <дистрибутив>

Вывести каталог в котором находятся модули пакета:
$ dist-info <дистрибутив> dist

Вывести путь к файлу или каталогу с метаинформацией:
$ dist-info <дистрибутив> egg

Вывести сокращённую метаинформацию:
$ dist-info <дистрибутив> meta

Вывести файлы:
$ dist-info <дистрибутив> files

Вывести модули:
$ dist-info [-c|--check] <дистрибутив> modules

Вывести модули по указанному пути:
$ dist-info [-c|--check] <каталог> mod

Вывести подмодули модуля (например, io.six - ищется в sys.path):
$ dist-info [-c|--check] <модуль> mods

INSTALL

$ pip3 install dist-info

REQUIREMENTS

  • data-printer

AUTHOR

Kosmina O. Yaroslav darviarush@mail.ru

LICENSE

MIT License

Copyright (c) 2020 Kosmina O. Yaroslav

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dist-info-0.1.1.tar.gz (6.6 kB view details)

Uploaded Source

Built Distribution

dist_info-0.1.1-py3-none-any.whl (7.3 kB view details)

Uploaded Python 3

File details

Details for the file dist-info-0.1.1.tar.gz.

File metadata

  • Download URL: dist-info-0.1.1.tar.gz
  • Upload date:
  • Size: 6.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.24.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/3.8.5

File hashes

Hashes for dist-info-0.1.1.tar.gz
Algorithm Hash digest
SHA256 d3bb04c8a7983b5efd582cd72c7ee6f5b3286020372d5acd2bfbc71738251df5
MD5 44fb4c4d0394a9bf5b82c5aeeba57f2a
BLAKE2b-256 028a56603d04a60aab552b605d06302a517c6c7e86d078c0ffd71c6a475428c3

See more details on using hashes here.

File details

Details for the file dist_info-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: dist_info-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 7.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.24.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/3.8.5

File hashes

Hashes for dist_info-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 e38ecce6bcea2470f1896b9faf341cc78711f172eb0ccc995ff40adfa17a6654
MD5 80af0a50379e1d02ea1ba5558969f41a
BLAKE2b-256 33f557fae73ee622ce328b836850110fb4bcbc81f8d6e3f28fbf5059148ec50f

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page