Qual é a diferença entre pacotes e bibliotecas python e o que são "ferramentas"?

Módulo

: Código Python contido em um arquivo.

Pacote

: Código Python contido em um diretório de arquivos. O diretório deve conter pelo menos um

__init__.py

Arquivo.

Biblioteca

: Uma coleção de módulo (s) e pacote (s).

Este é o significado simples de pacote, módulos e bibliotecas.

Ferramentas

: UMA

ferramenta

é qualquer utilidade que

melhora as capacidades naturais

do Python ao criar um aplicativo. Aqui um

depurador

é considerado uma ferramenta porque é um utilitário que controla os erros no caminho e evita as interrupções no programa.

Espero que você tenha entendido !!

Primeiramente, nos pacotes python estão os pedaços de dados transportados por um protocolo como TCP / IP - acho que você quer dizer

pacote

.

A distinção é:

Programa

: Algum código python que realmente faz um

completo

geralmente complexo

, espero que seja uma tarefa útil de ponta a ponta.

Roteiro

: Algum código python,

geralmente em um único arquivo,

que executa uma tarefa esperançosamente útil - geralmente um programa é chamado de script se executa uma tarefa razoavelmente trivial, linear e não é construído de maneira estruturada.

Ferramenta

: Um programa ou script python que executa uma tarefa útil, geralmente como parte de um processo maior. Sempre pode ser chamado diretamente, em vez de ser importado e usado. Geralmente instalado em um local comum, como o diretório de scripts python.

Módulo

: Um único ou conjunto de scripts que são importados por um programa para executar um aspecto específico da tarefa geral. Geralmente os módulos são bastante especializados. Pode ser um único arquivo, um único diretório com um

__init__.py

no diretório ou na hierarquia desses diretórios. Os próprios módulos podem conter submódulos. Eles podem ser fornecidos externamente ou desenvolvidos internamente e podem ser locais para o código que os importa ou instalado no caminho do python, mas geralmente o primeiro.

Biblioteca

: UMA

possivelmente definido

de módulos que fornecem um conjunto especializado de funções e / ou classes - geralmente diferenciado de um módulo pelo fato de serem instalados no caminho do python para serem usados ​​por vários programas, scripts ou ferramentas. Pode até ser total ou parcialmente escrito em um idioma que não seja python.

Pacote

: Uma biblioteca,

e / ou conjunto de ferramentas

, que foram

empacotado

para poder ser instalado a partir do índice do pacote python (

PyPI - o Índice do Pacote Python

) usando pip ou através de outro mecanismo de distribuição. Esse empacotamento é feito usando a biblioteca e garantindo que alguns dados adicionais necessários sejam fornecidos e executando o código por meio de uma ferramenta de empacotamento, como distutils.

Distribuição

: Uma coleção de python instalável agrupada, são bibliotecas padrão e

possivelmente

uma seleção de outros pacotes, ferramentas e bibliotecas - possivelmente destinados a um domínio específico.

Como você pode ver acima, um script é um programa, é uma ferramenta e vice-versa, e as distinções entre um módulo, pacote e biblioteca são sutis. Muito inútil

do ponto de vista da compreensão de tudo isso

um determinado pedaço de código pode ser várias coisas ao mesmo tempo - é bastante comum para um determinado módulo,

ou biblioteca

, além de ser importável, também pode ser usado como um programa ou ferramenta independente. De fato, uma das informações extras que você pode adicionar a uma biblioteca ou módulo ao transformá-lo em um pacote é especificar quais partes dele podem ser invocadas diretamente (pontos de entrada), para fornecer ferramentas ou programas adicionais - destila então cria

Durante a instalação

stubs específicos da plataforma que invocam essas partes da biblioteca diretamente.