A Biblioteca Padrão do Python
*****************************

Enquanto A Referência da Linguagem Python descreve a sintaxe e a
semântica exatas da linguagem Python, este manual de referência de
bibliotecas descreve a biblioteca padrão que é distribuída com o
Python. Ele também descreve alguns dos componentes opcionais que são
comumente incluídos nas distribuições do Python.

A biblioteca padrão do Python é muito extensa, oferecendo uma ampla
gama de recursos, conforme indicado pelo longo índice listado abaixo.
A biblioteca contém módulos embutidos (escritos em C) que fornecem
acesso à funcionalidade do sistema, como E/S de arquivos que de outra
forma seriam inacessíveis para programadores Python, bem como módulos
escritos em Python que fornecem soluções padronizadas para muitos
problemas que ocorrem em programação cotidiana. Alguns desses módulos
são explicitamente projetados para incentivar e aprimorar a
portabilidade de programas em Python, abstraindo os detalhes da
plataforma em APIs neutras em plataforma.

Os instaladores do Python para a plataforma Windows geralmente incluem
toda a biblioteca padrão e muitas vezes também incluem muitos
componentes adicionais. Para sistemas operacionais semelhantes a Unix,
o Python é normalmente fornecido como uma coleção de pacotes,
portanto, pode ser necessário usar as ferramentas de empacotamento
fornecidas com o sistema operacional para obter alguns ou todos os
componentes opcionais.

Além da biblioteca padrão, há uma coleção crescente de vários milhares
de componentes (de programas e módulos individuais a pacotes e
frameworks de desenvolvimento de aplicativos inteiros), disponíveis no
Python Package Index.

* Introdução

  * Observações sobre disponibilidade

* Funções embutidas

* Constantes embutidas

  * Constantes adicionadas pelo módulo "site"

* Tipos embutidos

  * Teste do valor verdade

  * Operações booleanas --- "and", "or", "not"

  * Comparações

  * Tipos numéricos --- "int", "float", "complex"

  * Tipos iteradores

  * Tipos sequências --- "list", "tuple", "range"

  * Tipo sequência de texto --- "str"

  * Tipos de sequência binária --- "bytes", "bytearray", "memoryview"

  * Tipo conjuntos --- "set", "frozenset"

  * Tipo mapeamento --- "dict"

  * Tipos de Gerenciador de Contexto

  * Outros tipos embutidos

  * Atributos Especiais

  * Limitação de comprimento de string na conversão para inteiro

* Exceções embutidas

  * Classes base

  * Exceções concretas

  * Avisos

  * Hierarquia das exceções

* Serviços de Processamento de Texto

  * "string" --- Operações comuns de strings

  * "re" --- Operações com expressões regulares

  * "difflib" --- Helpers for computing deltas

  * "textwrap" --- Text wrapping and filling

  * "unicodedata" --- Unicode Database

  * "stringprep" --- Internet String Preparation

  * "readline" --- Interface para o GNU readline

  * "rlcompleter" --- Função de autocomplemento para GNU readline

* Serviços de Dados Binários

  * "struct" --- Interpret bytes as packed binary data

  * "codecs" --- Codec registry and base classes

* Tipos de Dados

  * "datetime" --- Tipos básicos de data e hora

  * "calendar" --- General calendar-related functions

  * "collections" --- Tipos de dados de contêineres

  * "collections.abc" --- Classes Base Abstratas para Contêineres

  * "heapq" --- Algoritmo de fila heap

  * "bisect" --- Algoritmo de bisseção de vetor

  * "array"--- Vetores eficientes de valores numéricos

  * "weakref" --- Referências fracas

  * "types" --- Criação de tipos dinâmicos e nomes para tipos
    embutidos

  * "copy" --- Operações de cópia profunda e cópia rasa

  * "pprint" --- Impressão Bonita de Dados

  * "reprlib" --- Implementação alternativa à "repr()"

  * "enum" --- Suporte a enumerações

* Módulos Matemáticos e Numéricos

  * "numbers" --- Classes base abstratas numéricas

  * "math" --- Funções matemáticas

  * "cmath" --- Funções matemáticas para números complexos

  * "decimal" --- Aritmética de ponto fixo decimal e ponto flutuante

  * "fractions" --- Rational numbers

  * "random" --- Gera números pseudoaleatórios

  * "statistics" --- Funções estatísticas

* Módulos de Programação Funcional

  * "itertools" --- Funções que criam iteradores para laços eficientes

  * "functools" --- Funções e operações de ordem superior em objetos
    chamáveis

  * "operator" --- Operadores padrões como funções

* Acesso a arquivos e diretórios

  * "pathlib" --- Caminhos do sistema de arquivos orientados a objetos

  * "os.path" --- Manipulações comuns de nomes de caminhos

  * "fileinput" --- Iterate over lines from multiple input streams

  * "stat" --- Interpreting "stat()" results

  * "filecmp" --- Comparações de arquivos e diretórios

  * "tempfile" --- Gerar arquivos temporários e diretórios

  * "glob" --- Expansão de padrão de nome de arquivo no estilo Unix

  * "fnmatch" --- Correspondência de padrões de nome de arquivo Unix

  * "linecache" --- Acesso aleatório a linhas de texto

  * "shutil" --- Operações de arquivo de alto nível

* Persistência de Dados

  * "pickle" --- Serialização de objetos Python

  * "copyreg" --- Registra funções de suporte "pickle"

  * "shelve" --- Persistência de objetos Python

  * "marshal" --- Serialização interna de objetos Python

  * "dbm" --- Interfaces to Unix "databases"

  * "sqlite3" --- Interface DB-API 2.0 para bancos de dados SQLite

* Compressão de Dados e Arquivamento

  * "zlib" --- Compactação compatível com **gzip**

  * "gzip" --- Support for **gzip** files

  * "bz2" --- Suporte para compressão **bzip2**

  * "lzma" --- Compactação usando o algoritmo LZMA

  * "zipfile" --- Trabalha com arquivos ZIP

  * "tarfile" --- Read and write tar archive files

* Formatos de Arquivo

  * "csv" --- Leitura e escrita de arquivos CSV

  * "configparser" --- Configuration file parser

  * "netrc" --- Arquivo de processamento netrc

  * "xdrlib" --- Encode and decode XDR data

  * "plistlib" --- Generate and parse Mac OS X ".plist" files

* Serviços Criptográficos

  * "hashlib" --- Secure hashes and message digests

  * "hmac" --- Keyed-Hashing for Message Authentication

  * "secrets" --- Gera números aleatórios seguros para gerenciar
    segredos

* Serviços Genéricos do Sistema Operacional

  * "os" --- Diversas interfaces de sistema operacional

  * "io" --- Ferramentas principais para trabalhar com fluxos

  * "time" --- Acesso ao horário e conversões

  * "argparse" --- Analisador sintático para opções de linha de
    comando, argumentos e subcomandos

  * "getopt" --- Analisador sintático no estilo C para opções de linha
    de comando

  * "logging" --- Recurso de utilização do Logging para Python

  * "logging.config" --- Logging configuration

  * "logging.handlers" --- Tratadores de registro

  * "getpass" --- Entrada de senha portátil

  * "curses" --- Gerenciador de terminal para visualizadores de
    células de caracteres.

  * "curses.textpad" --- Text input widget for curses programs

  * "curses.ascii" --- Utilities for ASCII characters

  * "curses.panel" --- A panel stack extension for curses

  * "platform" ---  Access to underlying platform's identifying data

  * "errno" --- Standard errno system symbols

  * "ctypes" --- Uma biblioteca de funções externas para Python

* Execução Concorrente

  * "threading" --- Paralelismo baseado em Thread

  * "multiprocessing" --- Paralelismo baseado em processo

  * "multiprocessing.shared_memory" --- Fornece memória compartilhada
    para acesso direto entre processos

  * O pacote "concurrent"

  * "concurrent.futures" --- Iniciando tarefas em paralelo

  * "subprocess" --- Gerenciamento de subprocessos

  * "sched" --- Event scheduler

  * "queue" --- A synchronized queue class

  * "contextvars" --- Variáveis de contexto

  * "_thread"--- API de segmentação de baixo nível

  * "_dummy_thread" --- Substituição direta para o módulo "_thread"

  * "dummy_threading" --- Substituição drop-in para o módulo
    "threading"

* Comunicação em Rede e Interprocesso

  * "asyncio" --- E/S assíncrona

  * "socket" --- Interface de rede de baixo nível

  * "ssl" --- TLS/SSL wrapper for socket objects

  * "select" --- Waiting for I/O completion

  * "selectors" --- High-level I/O multiplexing

  * "asyncore" --- Asynchronous socket handler

  * "asynchat" --- Asynchronous socket command/response handler

  * "signal" --- Set handlers for asynchronous events

  * "mmap" --- Suporte a arquivos mapeados na memória

* Manuseio de Dados na Internet

  * "email" --- Um e-mail e um pacote MIME manipulável

  * "json" --- Codificador e decodificador JSON

  * "mailcap" --- Mailcap file handling

  * "mailbox" --- Manipulate mailboxes in various formats

  * "mimetypes" --- Mapeia nomes de arquivos para tipos MIME

  * "base64" --- Codificações de dados em Base16, Base32, Base64,
    Base85

  * "binhex" --- Codifica e decodifica arquivos binhex4

  * "binascii" --- Converte entre binário e ASCII

  * "quopri" --- Codifica e decodifica dados MIME imprimidos entre
    aspas

  * "uu" --- Codifica e decodifica arquivos uuencode

* Ferramentas de Processamento de Markup Estruturado

  * "html" --- Suporte HTML(HyperText Markup Language)

  * "html.parser" --- Simple HTML and XHTML parser

  * "html.entities" --- Definições de entidades gerais de HTML

  * Módulos de Processamento de XML

  * "xml.etree.ElementTree" --- A API XML ElementTree

  * "xml.dom" --- The Document Object Model API

  * "xml.dom.minidom" --- Minimal DOM implementation

  * "xml.dom.pulldom" --- Support for building partial DOM trees

  * "xml.sax" --- Support for SAX2 parsers

  * "xml.sax.handler" --- Classes base para manipuladores de SAX

  * "xml.sax.saxutils" --- SAX Utilities

  * "xml.sax.xmlreader" --- Interface for XML parsers

  * "xml.parsers.expat" --- Análise rápida de XML usando Expat

* Protocolos de Internet e Suporte

  * "webbrowser" --- Convenient Web-browser controller

  * "cgi" --- Suporte a Common Gateway Interface

  * "cgitb" --- Gerenciador de traceback (situação da pilha de
    execução) para roteiros de CGI

  * "wsgiref" --- Utilidades WSGI e Implementação de Referência

  * "urllib" --- Módulos de manipulação de URL

  * "urllib.request" --- Biblioteca extensível para abrir URLs

  * "urllib.response" --- Response classes used by urllib

  * "urllib.parse" --- Analisa URLs para componentes

  * "urllib.error" --- Classes de exceção levantadas por
    urllib.request

  * "urllib.robotparser" ---  Parser for robots.txt

  * "http" --- módulos HTTP

  * "http.client" --- cliente de protocolo HTTP

  * "ftplib" --- FTP protocol client

  * "poplib" --- Cliente de protocolo POP3

  * "imaplib" --- IMAP4 protocol client

  * "nntplib" --- NNTP protocol client

  * "smtplib" --- SMTP protocol client

  * "smtpd" --- Serviços SMTP

  * "telnetlib" --- cliente Telnet

  * "uuid" --- UUID objects according to **RFC 4122**

  * "socketserver" --- A framework for network servers

  * "http.server" --- servidores HTTP

  * "http.cookies" --- Gerenciadores de estado HTTP

  * "http.cookiejar" --- Cookie handling for HTTP clients

  * "xmlrpc" --- Módulos de servidor e cliente XMLRPC

  * "xmlrpc.client" --- Cliente XML-RPC

  * "xmlrpc.server" --- Servidores XML-RPC básicos

  * "ipaddress" --- Biblioteca de manipulação de IPv4/IPv6

* Serviços Multimídia

  * "audioop" --- Manipulando dados de áudio original

  * "aifc" --- Lê e escreve arquivos AIFF e AIFC

  * "sunau" --- Lê e escreve arquivos AU da Sun

  * "wave" --- Read and write WAV files

  * "chunk" --- Read IFF chunked data

  * "colorsys" --- Conversões entre sistemas de cores

  * "imghdr" --- Determina o tipo de uma imagem

  * "sndhdr" --- Determina o tipo de arquivos de som

  * "ossaudiodev" --- Access to OSS-compatible audio devices

* Internacionalização

  * "gettext" --- Serviços de internacionalização multilíngues

  * "locale" --- Serviços de internacionalização

* Frameworks de programa

  * "turtle" --- Gráficos Tartaruga

  * "cmd" --- Suporte para interpretadores de comando orientado a
    linhas

  * "shlex" --- Análise léxica simples

* Interfaces Gráficas de Usuário com Tk

  * "tkinter" --- Interface Python para Tcl/Tk

  * : mod: *tkinter.ttk* --- Widgets temáticos do Tk

  * "tkinter.tix" --- Extension widgets for Tk

  * "tkinter.scrolledtext" --- Widget Scrolled Text

  * IDLE

  * Outros Pacotes de Interface Gráficas de Usuário

* Ferramentas de Desenvolvimento

  * "typing" --- Suporte para dicas de tipo

  * "pydoc" --- Gerador de documentação e sistema de ajuda online

  * "doctest" --- Teste exemplos interativos de Python

  * "unittest" --- Framework de Testes Unitários

  * "unittest.mock" --- biblioteca de objeto mock

  * "unittest.mock" --- primeiros passos

  * 2to3 - Tradução Automatizada de Código Python 2 para 3

  * "test" --- Pacote de Testes de Regressão do Python

  * "test.support" --- Utilitários para o conjunto de teste do Python

  * "test.support.script_helper" --- Utilities for the Python
    execution tests

* Depuração e perfilamento

  * Tabela de eventos de auditoria

  * "bdb" --- Debugger framework

  * "faulthandler" --- Dump the Python traceback

  * "pdb" --- O Depurador do Python

  * Os Profilers do Python

  * "timeit" --- Mede o tempo de execução de pequenos trechos de
    código

  * "trace" --- Rastreia ou acompanha a execução de instruções Python

  * "tracemalloc" --- Trace memory allocations

* Empacotamento e Distribuição de Software

  * "distutils" --- Criação e instalação de módulos do Python

  * "ensurepip" --- Inicialização do instalador do "pip"

  * "venv"--- Criação de ambientes virtuais

  * "zipapp" --- Manage executable Python zip archives

* Serviços de Tempo de Execução Python

  * "sys" --- Parâmetros e funções específicas do sistema

  * "sysconfig" --- Fornece acesso às informações de configuração do
    Python

  * "builtins" --- Objetos embutidos

  * "__main__" --- Ambiente de Script de Nível Superior

  * "warnings" --- Controle de avisos

  * "dataclasses" --- Data Classes

  * "contextlib" --- Utilities for "with"-statement contexts

  * "abc" --- Classes Base Abstratas

  * "atexit" --- Manipuladores de Saída

  * "traceback" --- Print or retrieve a stack traceback

  * "__future__" --- Definições de instruções de future

  * "gc" --- Interface para o coletor de lixo

  * "inspect" --- Inspeciona objetos vivos

  * "site" --- Gancho de configuração específico do site

* Interpretadores Python Personalizados

  * "code" --- Classes Bases do Interpretador

  * "codeop" --- Compila código Python

* Importando módulos

  * "zipimport" --- Import modules from Zip archives

  * "pkgutil" --- Utilitário de extensão de pacote

  * "modulefinder" --- Procura módulos usados por um script

  * "runpy" --- Localizando e executando módulos Python

  * "importlib" --- A implementação de "import"

  * Using "importlib.metadata"

* Serviços da Linguagem Python

  * "parser" --- Acessa árvores de análise do Python

  * "ast" --- Árvores de Sintaxe Abstrata

  * "symtable" --- Acesso a tabela de símbolos do compilador

  * "symbol" --- Constantes usadas com árvores de análise do Python

  * "token" --- Constantes usadas com árvores de análises do Python

  * "keyword" --- Testando palavras reservadas do Python

  * "tokenize" --- Tokenizer for Python source

  * "tabnanny" --- Detecção de recuo ambíguo

  * "pyclbr" --- Suporte a navegador de módulos do Python

  * "py_compile" --- Compila arquivos fonte do Python

  * "compileall" --- Compilar bibliotecas do Python para bytecode

  * "dis" --- Disassembler de bytecode do Python

  * "pickletools" --- Ferramentas para desenvolvedores pickle

* Serviços Diversos

  * "formatter" --- Formatação de saída genérica

* Serviços Específicos do MS Windows

  * "msilib" --- Read and write Microsoft Installer files

  * "msvcrt" --- Rotinas úteis do tempo de execução do MS VC++

  * "winreg" -- Registro de acesso do Windows

  * "winsound" --- Interface de reprodução de som para Windows

* Serviços Específicos Unix

  * "posix" --- As chamadas de sistema mais comuns do POSIX

  * "pwd" --- A senha do banco de dados

  * "spwd" --- O banco de dados de senhas shadow

  * "grp" --- The group database

  * "crypt" --- Function to check Unix passwords

  * "termios" --- Controle de tty no estilo POSIX

  * "tty" --- Funções de controle de terminal

  * "pty" --- Utilitários de pseudoterminal

  * "fcntl" --- as chamadas de sistema "fcntl" e "ioctl"

  * "pipes" --- Interface to shell pipelines

  * "resource" --- Resource usage information

  * "nis" --- Interface para NIS da Sun (Yellow Pages)

  * "syslog" --- Rotinas da biblioteca syslog do Unix

* Módulos substituídos

  * "optparse" --- Parser for command line options

  * "imp" --- Access the *import* internals

* Módulos Não Documentados

  * Módulos para plataformas específicas
