# Python Programming/Library Modules

This is a list of python modules in the standard library as of Python 3.6.
* __future__: Future statement definitions
* __main__: The environment where the top-level script is run.
* _dummy_thread: Drop-in replacement for the _thread module.
* _thread: Low-level threading API.
* abc: Abstract base classes according to PEP 3119.
* aifc: Read and write audio files in AIFF or AIFC format.
* argparse: Command-line option and argument parsing library.
* array: Space efficient arrays of uniformly typed numeric values.
* ast: Abstract Syntax Tree classes and manipulation.
* asynchat: Support for asynchronous command/response protocols.
* asyncio: Asynchronous I/O, event loop, coroutines and tasks.
* asyncore: A base class for developing asynchronous socket handling services.
* atexit: Register and execute cleanup functions.
* audioop: Manipulate raw audio data.
* base64: RFC 3548: Base16, Base32, Base64 Data Encodings; Base85 and Ascii85
* bdb: Debugger framework.
* binascii: Tools for converting between binary and various ASCII-encoded binary representations.
* binhex: Encode and decode files in binhex4 format.
* bisect: Array bisection algorithms for binary searching.
* builtins: The module that provides the built-in namespace.
* bz2: Interfaces for bzip2 compression and decompression.
* calendar: Functions for working with calendars, including some emulation of the Unix cal program.
* cgi: Helpers for running Python scripts via the Common Gateway Interface.
* cgitb: Configurable traceback handler for CGI scripts.
* chunk: Module to read IFF chunks.
* cmath: Mathematical functions for complex numbers.
* cmd: Build line-oriented command interpreters.
* code: Facilities to implement read-eval-print loops.
* codecs: Encode and decode data and streams.
* codeop: Compile (possibly incomplete) Python code.
* collections: Container datatypes
* colorsys: Conversion functions between RGB and other color systems.
* compileall: Tools for byte-compiling all Python source files in a directory tree.
* concurrent:
* configparser: Configuration file parser.
* contextlib: Utilities for with-statement contexts.
* copy: Shallow and deep copy operations.
* copyreg: Register pickle support functions.
* cProfile
* crypt (Unix): The crypt function used to check Unix passwords.
* csv: Write and read tabular data to and from delimited files.
* ctypes: A foreign function library for Python.
* curses (Unix): An interface to the curses library, providing portable terminal handling.
* datetime: Basic date and time types.
* dbm: Interfaces to various Unix "database" formats.
* decimal: Implementation of the General Decimal Arithmetic Specification.
* difflib: Helpers for computing differences between objects.
* dis: Disassembler for Python bytecode.
* distutils: Support for building and installing Python modules into an existing Python installation.
* doctest: Test pieces of code within docstrings.
* dummy_threading: Drop-in replacement for the threading module.
* email: Package supporting the parsing, manipulating, and generating email messages.
* encodings:
* ensurepip: Bootstrapping the "pip" installer into an existing Python installation or virtual environment.
* enum: Implementation of an enumeration class.
* errno: Standard errno system symbols.
* faulthandler: Dump the Python traceback.
* fcntl (Unix): The fcntl and ioctl system calls.
* filecmp: Compare files efficiently.
* fileinput: Loop over standard input or a list of files.
* fnmatch: Unix shell style filename pattern matching.
* formatter: Deprecated: Generic output formatter and device interface.
* fpectl (Unix): Provide control for floating point exception handling.
* fractions: Rational numbers.
* ftplib: FTP protocol client (requires sockets).
* functools: Higher-order functions and operations on callable objects.
* gc: Interface to the cycle-detecting garbage collector.
* getopt: Portable parser for command line options; support both short and long option names.
* getpass: Portable reading of passwords and retrieval of the userid.
* gettext: Multilingual internationalization services.
* glob: Unix shell style pathname pattern expansion.
* grp (Unix): The group database (getgrnam and friends).
* gzip: Interfaces for gzip compression and decompression using file objects.
* hashlib: Secure hash and message digest algorithms.
* heapq: Heap queue algorithm (a.k.a. priority queue).
* hmac: Keyed-Hashing for Message Authentication (HMAC) implementation
* html: Helpers for manipulating HTML.
* http: HTTP status codes and messages
* imaplib: IMAP4 protocol client (requires sockets).
* imghdr: Determine the type of image contained in a file or byte stream.
* imp: Deprecated: Access the implementation of the import statement.
* importlib: The implementation of the import machinery.
* inspect: Extract information and source code from live objects.
* io: Core tools for working with streams.
* ipaddress: IPv4/IPv6 manipulation library.
* itertools: Functions creating iterators for efficient looping.
* json: Encode and decode the JSON format.
* keyword: Test whether a string is a keyword in Python.
* lib2to3: the 2to3 library
* linecache: This module provides random access to individual lines from text files.
* locale: Internationalization services.
* logging: Flexible event logging system for applications.
* lzma: A Python wrapper for the liblzma compression library.
* macpath: Mac OS 9 path manipulation functions.
* mailbox: Manipulate mailboxes in various formats
* mailcap: Mailcap file handling.
* marshal: Convert Python objects to streams of bytes and back (with different constraints).
* math: Mathematical functions (sin etc.).
* mimetypes: Mapping of filename extensions to MIME types.
* mmap: Interface to memory-mapped files for Unix and Windows.
* modulefinder: Find modules used by a script.
* msilib (Windows): Creation of Microsoft Installer files, and CAB files.
* msvcrt (Windows): Miscellaneous useful routines from the MS VC++ runtime.
* multiprocessing: Process-based parallelism.
* netrc: Loading of .netrc files.
* nis (Unix): Interface to Sun's NIS (Yellow Pages) library.
* nntplib: NNTP protocol client (requires sockets).
* numbers: Numeric abstract base classes (Complex, Real, Integral, etc.).
* operator: Functions corresponding to the standard operators.
* optparse: Deprecated: Command-line option parsing library.
* os: Miscellaneous operating system interfaces.
* ossaudiodev (Linux, FreeBSD): Access to OSS-compatible audio devices.
* parser: Access parse trees for Python source code.
* pathlib: Object-oriented filesystem paths
* pdb: The Python debugger for interactive interpreters.
* pickle: Convert Python objects to streams of bytes and back.
* pickletools: Contains extensive comments about the pickle protocols and pickle-machine opcodes, as well as some useful functions.
* pipes (Unix): A Python interface to Unix shell pipelines.
* pkgutil: Utilities for the import system.
* platform: Retrieves as much platform identifying data as possible.
* plistlib: Generate and parse Mac OS X plist files.
* poplib: POP3 protocol client (requires sockets).
* posix (Unix): The most common POSIX system calls (normally used via module os).
* pprint: Data pretty printer.
* profile: Python source profiler.
* pstats: Statistics object for use with the profiler.
* pty (Linux): Pseudo-Terminal Handling for Linux.
* pwd (Unix): The password database (getpwnam and friends).
* py_compile: Generate byte-code files from Python source files.
* pyclbr: Supports information extraction for a Python class browser.
* pydoc: Documentation generator and online help system.
* queue: A synchronized queue class.
* quopri: Encode and decode files using the MIME quoted-printable encoding.
* random: Generate pseudo-random numbers with various common distributions.
* re: Regular expression operations.
* readline (Unix): GNU readline support for Python.
* reprlib: Alternate repr implementation with size limits.
* resource (Unix): An interface to provide resource usage information on the current process.
* rlcompleter: Python identifier completion, suitable for the GNU readline library.
* runpy: Locate and run Python modules without importing them first.
* sched: General purpose event scheduler.
* secrets: Generate secure random numbers for managing secrets.
* select: Wait for I/O completion on multiple streams.
* selectors: High-level I/O multiplexing.
* shelve: Python object persistence.
* shlex: Simple lexical analysis for Unix shell-like languages.
* shutil: High-level file operations, including copying.
* signal: Set handlers for asynchronous events.
* site: Module responsible for site-specific configuration.
* smtpd: A SMTP server implementation in Python.
* smtplib: SMTP protocol client (requires sockets).
* sndhdr: Determine type of a sound file.
* socket: Low-level networking interface.
* socketserver: A framework for network servers.
* spwd (Unix): The shadow password database (getspnam and friends).
* sqlite3: A DB-API 2.0 implementation using SQLite 3.x.
* ssl: TLS/SSL wrapper for socket objects
* stat: Utilities for interpreting the results of os.stat, os.lstat and os.fstat.
* statistics: mathematical statistics functions
* string: Common string operations.
* stringprep: String preparation, as per RFC 3453
* struct: Interpret bytes as packed binary data.
* subprocess: Subprocess management.
* sunau: Provide an interface to the Sun AU sound format.
* symbol: Constants representing internal nodes of the parse tree.
* symtable: Interface to the compiler's internal symbol tables.
* sys: Access system-specific parameters and functions.
* sysconfig: Python's configuration information
* syslog (Unix): An interface to the Unix syslog library routines.
* tabnanny: Tool for detecting white space related problems in Python source files in a directory tree.
* tarfile: Read and write tar-format archive files.
* telnetlib: Telnet client class.
* tempfile: Generate temporary files and directories.
* termios (Unix): POSIX style tty control.
* test: Regression tests package containing the testing suite for Python.
* textwrap: Text wrapping and filling
* threading: Thread-based parallelism.
* time: Time access and conversions.
* timeit: Measure the execution time of small code snippets.
* tkinter: Interface to Tcl/Tk for graphical user interfaces
* token: Constants representing terminal nodes of the parse tree.
* tokenize: Lexical scanner for Python source code.
* trace: Trace or track Python statement execution.
* traceback: Print or retrieve a stack traceback.
* tracemalloc: Trace memory allocations.
* tty (Unix): Utility functions that perform common terminal control operations.
* turtle: An educational framework for simple graphics applications
* turtledemo: A viewer for example turtle scripts
* types: Names for built-in types.
* typing: Support for type hints (see PEP 484).
* unicodedata: Access the Unicode Database.
* unittest: Unit testing framework for Python.
* urllib:
* uu: Encode and decode files in uuencode format.
* uuid: UUID objects (universally unique identifiers) according to RFC 4122
* venv: Creation of virtual environments.
* warnings: Issue warning messages and control their disposition.
* wave: Provide an interface to the WAV sound format.
* weakref: Support for weak references and weak dictionaries.
* webbrowser: Easy-to-use controller for Web browsers.
* winreg (Windows): Routines and objects for manipulating the Windows registry.
* winsound (Windows): Access to the sound-playing machinery for Windows.
* wsgiref: WSGI Utilities and Reference Implementation.
* xdrlib: Encoders and decoders for the External Data Representation (XDR).
* xml: Package containing XML processing modules
* zipapp: Manage executable python zip archives
* zipfile: Read and write ZIP-format archive files.
* zipimport: support for importing Python modules from ZIP archives.
* zlib: Low-level interface to compression and decompression routines compatible with gzip.