- Glossary - B
- ********
- BDFL
- Benevolent Dictator For Life, a.k.a. Guido van Rossum, Python's
- creator.
- binary file
- A *file object* able to read and write *bytes-like objects*.
- Examples of binary files are files opened in binary mode ("'rb'",
- "'wb'" or "'rb+'"), "sys.stdin.buffer", "sys.stdout.buffer", and
- instances of "io.BytesIO" and "gzip.GzipFile".
- See also *text file* for a file object able to read and write "str"
- objects.
- borrowed reference
- In Python's C API, a borrowed reference is a reference to an
- object. It does not modify the object reference count. It becomes a
- dangling pointer if the object is destroyed. For example, a garbage
- collection can remove the last *strong reference* to the object and
- so destroy it.
- Calling "Py_INCREF()" on the *borrowed reference* is recommended to
- convert it to a *strong reference* in-place, except when the object
- cannot be destroyed before the last usage of the borrowed
- reference. The "Py_NewRef()" function can be used to create a new
- *strong reference*.
- bytes-like object
- An object that supports the Buffer Protocol and can export a
- C-*contiguous* buffer. This includes all "bytes", "bytearray", and
- "array.array" objects, as well as many common "memoryview" objects.
- Bytes-like objects can be used for various operations that work
- with binary data; these include compression, saving to a binary
- file, and sending over a socket.
- Some operations need the binary data to be mutable. The
- documentation often refers to these as "read-write bytes-like
- objects". Example mutable buffer objects include "bytearray" and a
- "memoryview" of a "bytearray". Other operations require the binary
- data to be stored in immutable objects ("read-only bytes-like
- objects"); examples of these include "bytes" and a "memoryview" of
- a "bytes" object.
- bytecode
- Python source code is compiled into bytecode, the internal
- representation of a Python program in the CPython interpreter. The
- bytecode is also cached in ".pyc" files so that executing the same
- file is faster the second time (recompilation from source to
- bytecode can be avoided). This "intermediate language" is said to
- run on a *virtual machine* that executes the machine code
- corresponding to each bytecode. Do note that bytecodes are not
- expected to work between different Python virtual machines, nor to
- be stable between Python releases.
- A list of bytecode instructions can be found in the documentation
- for the dis module.
Python software and documentation are licensed under the PSF License Agreement.
Starting with Python 3.8.6, examples, recipes, and other code in the documentation are dual licensed under the PSF License Agreement and the Zero-Clause BSD license.
Some software incorporated into Python is under different licenses. The licenses are listed with code falling under that license. See Licenses and Acknowledgements for Incorporated Software for an incomplete list of these licenses.
Python and it's documentation is:
Copyright © 2001-2022 Python Software Foundation. All rights reserved.
Copyright © 2000 BeOpen.com. All rights reserved.
Copyright © 1995-2000 Corporation for National Research Initiatives. All rights reserved.
Copyright © 1991-1995 Stichting Mathematisch Centrum. All rights reserved.
See History and License for complete license and permissions information:
https://docs.python.org/3/license.html#psf-license