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 internos (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.

* 1. Introdução

* 2. Funções Built-in

* 3. Constantes Built-in

  * 3.1. Constants added by the "site" module

* 4. Tipos internos

  * 4.1. Teste do Valor Verdade

  * 4.2. Operações Booleanas --- "and", "or", "not"

  * 4.3. Comparações

  * 4.4. Tipos Numéricos --- "int", "float", "complex"

  * 4.5. Tipos de Iteradores

  * 4.6. Tipos de Sequências --- "list", "tuple", "range"

  * 4.7. Tipo de Sequência de Texto --- "str"

  * 4.8. Tipos de Sequência Binária --- "bytes", "bytearray",
    "memoryview"

  * 4.9. Tipo Set --- "set", "frozenset"

  * 4.10. Tipo de Mapeamento --- "dict"

  * 4.11. Tipos de Gerenciador de Contexto

  * 4.12. Outros tipos embutidos

  * 4.13. Atributos Especiais

* 5. Exceções embutidas

  * 5.1. Classes base

  * 5.2. Exceções concretas

  * 5.3. Avisos

  * 5.4. Hierarquia das exceções

* 6. Serviços de Processamento de Texto

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

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

  * 6.3. "difflib" --- Helpers for computing deltas

  * 6.4. "textwrap" --- Text wrapping and filling

  * 6.5. "unicodedata" --- Unicode Database

  * 6.6. "stringprep" --- Internet String Preparation

  * 6.7. "readline" --- GNU readline interface

  * 6.8. "rlcompleter" --- Função de completamento para GNU readline

* 7. Serviços de Dados Binários

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

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

* 8. Tipos de Dados

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

  * 8.2. "calendar" --- General calendar-related functions

  * 8.3. Tipos de dados do contêiner

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

  * 8.5. "heapq" --- Heap queue algorithm

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

  * 8.7. "array"--- Arrays eficientes de valores numéricos

  * 8.8. "weakref" --- Weak references

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

  * 8.10. "copy" --- Operações de cópia profunda e cópia sombra

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

  * 8.12. "reprlib" --- Alternate "repr()" implementation

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

* 9. Módulos Matemáticos e Numéricos

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

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

  * 9.3. "cmath" --- Mathematical functions for complex numbers

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

  * 9.5. "fractions" --- Rational numbers

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

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

* 10. Módulos de Programção Funcional

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

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

  * 10.3. "operator" --- Operadores padrão como funções

* 11. Arquivo e Acesso aos Diretórios

  * 11.1. "pathlib" --- Caminhos do Sistema de Arquivos Orientados a
    Objetos

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

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

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

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

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

  * 11.7. :mod:glob --- Expansão de padrão de nome de arquivo no
    estilo Unix

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

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

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

  * 11.11. "macpath" --- Funções de manipulação de caminho do Mac OS 9

* 12. Persistência de Dados

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

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

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

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

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

  * 12.6. "sqlite3" --- DB-API 2.0 interface for SQLite databases

* 13. Compressão de Dados e Arquivamento

  * 13.1. "zlib" --- Compression compatible with **gzip**

  * 13.2. "gzip" --- Support for **gzip** files

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

  * 13.4. "lzma" --- Compression using the LZMA algorithm

  * 13.5. "zipfile" --- Trabalha com arquivos ZIP

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

* 14. Formatos de Arquivo

  * 14.1. "csv" --- Leiture e Escrita de arquivos CSV

  * 14.2. "configparser" --- Configuration file parser

  * 14.3. "netrc" --- arquivo de processamento netrc

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

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

* 15. Serviços Criptográficos

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

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

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

* 16. Serviços Genéricos do Sistema Operacional

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

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

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

  * 16.4. "argparse" --- Parser para opções de linha de comando,
    argumentos e subcomandos

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

  * 16.6. "logging" --- Facilidade para registrar com Python

  * 16.7. "logging.config" --- Logging configuration

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

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

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

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

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

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

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

  * 16.15. "errno" --- Standard errno system symbols

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

* 17. Execução Concorrente

  * 17.1. "threading" ---  Paralelismo baseado em Thread

  * 17.2. "multiprocessing" --- Process-based parallelism

  * 17.3. O pacote "concurrent"

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

  * 17.5. "subprocess" --- Gerenciamento de subprocessos

  * 17.6. "sched" --- Event scheduler

  * 17.7. "queue" --- A synchronized queue class

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

  * 17.9. :mod:thread--- API de segmentação de baixo nível

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

* 18. Interprocess Communication and Networking

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

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

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

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

  * 18.5. "asyncio" --- Asynchronous I/O, event loop, coroutines and
    tasks

  * 18.6. "asyncore" --- Asynchronous socket handler

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

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

  * 18.9. "mmap" --- Suporte a arquivos com memória mapeada

* 19. Manuseio de Dados na Internet

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

  * 19.2. "json" --- JSON codificador e decodificador

  * 19.3. "mailcap" --- Mailcap file handling

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

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

  * 19.6. "base64" --- Base16, Base32, Base64, Base85 Data Encodings

  * 19.7. "binhex" --- Codifica e descodifica arquivos binhex4

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

  * 19.9. "quopri" --- Codifica e decodifica dados imprimíveis com
    aspas em MIME

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

* 20. Ferramentas de Processamento de Markup Estruturado

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

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

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

  * 20.4. XML Processing Modules

  * 20.5. API XML ElementTree

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

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

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

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

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

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

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

  * 20.13. "xml.parsers.expat" --- Fast XML parsing using Expat

* 21. Protocolos de Internet e Suporte

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

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

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

  * 21.4. "wsgiref" --- WSGI Utilities and Reference Implementation

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

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

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

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

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

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

  * 21.11. "http" --- módulos HTTP

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

  * 21.13. "ftplib" --- FTP protocol client

  * 21.14. "poplib" --- POP3 protocol client

  * 21.15. "imaplib" --- IMAP4 protocol client

  * 21.16. "nntplib" --- NNTP protocol client

  * 21.17. "smtplib" --- SMTP protocol client

  * 21.18. "smtpd" --- Serviços SMTP

  * 21.19. "telnetlib" --- cliente Telnet

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

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

  * 21.22. "http.server" --- servidores HTTP

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

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

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

  * 21.26. "xmlrpc.client" --- XML-RPC client access

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

  * 21.28. "ipaddress" --- IPv4/IPv6 manipulation library

* 22. Serviços Multimídia

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

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

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

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

  * 22.5. "chunk" --- Read IFF chunked data

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

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

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

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

* 23. Internacionalização

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

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

* 24. Frameworks de programas

  * 24.1. "turtle" --- Gráficos Turtle

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

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

* 25. Interfaces Gráficas de Usuário com Tk

  * 25.1. : mod: *tkinter* --- Interface Python para Tcl / Tk

  * 25.2. "tkinter.ttk" --- Tk themed widgets

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

  * 25.4. "tkinter.scrolledtext" --- Wdiget Scrolled Text

  * 25.5. IDLE

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

* 26. Ferramentas de Desenvolvimento

  * 26.1. "typing" --- Support for type hints

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

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

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

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

  * 26.6. "unittest.mock" --- começando

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

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

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

* 27. Depuração e perfilamento

  * 27.1. "bdb" --- Debugger framework

  * 27.2. "faulthandler" --- Dump the Python traceback

  * 27.3. "pdb" --- O Depurador do Python

  * 27.4. The Python Profilers

  * 27.5. "timeit" --- Measure execution time of small code snippets

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

  * 27.7. "tracemalloc" --- Trace memory allocations

* 28. Empacotamento e Distribuição de Software

  * 28.1. "distutils" --- Compilação e instalação de módulos do Python

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

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

  * 28.4. "zipapp" --- Manage executable python zip archives

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

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

  * 29.2. "sysconfig" --- Provide access to Python's configuration
    information

  * 29.3. "builtins" --- Objetos Built-in

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

  * 29.5. "warnings" --- Controle de avisos

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

  * 29.7. "abc" --- Classes Base Abstratas

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

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

  * 29.10. : mod: *__future__* --- Definições de declaração futura

  * 29.11. "gc" --- Garbage Collector interface

  * 29.12. "inspect" --- Inspeciona objetos vivos

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

  * 29.14. "fpectl" --- Floating point exception control

* 30. Interpretadores Python Personalizados

  * 30.1. "code" --- Classes Bases do Intérprete

  * 30.2. "codeop" --- Compilar código Python

* 31. Importando Módulos

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

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

  * 31.3. "modulefinder" --- Procurar módulos usados por um script

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

  * 31.5. "importlib" --- The implementation of "import"

* 32. Serviços da Linguagem Python

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

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

  * 32.3. "symtable" --- Acesso a tabela de simbolos do compilador

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

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

  * 32.6. "keyword" --- Testando palavras-chave do Python

  * 32.7. "tokenize" --- Tokenizer for Python source

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

  * 32.9. "pyclbr" --- Suporte a navegador de classes do Python

  * 32.10. "py_compile" --- Compilar arquivos fonte do Python

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

  * 32.12. "dis" --- Disassembler do bytecode do Python

  * 32.13. "pickletools" --- Ferramentas para desenvolvedores pickle

* 33. Serviços Diversos

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

* 34. Serviços Específicos do MS Windows

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

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

  * 34.3. "winreg" --- Windows registry access

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

* 35. Serviços Específicos Unix

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

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

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

  * 35.4. "grp" --- The group database

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

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

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

  * 35.8. "pty" --- Pseudo-terminal utilities

  * 35.9. "fcntl" --- as chamadas do sistema "fcntl" e "ioctl"

  * 35.10. "pipes" --- Interface to shell pipelines

  * 35.11. "resource" --- Resource usage information

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

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

* 36. Módulos Substituídos

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

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

* 37. Módulos Não Documentados

  * 37.1. Módulos para plataformas específicas
