77 commands · 5 cheat sheets · Python
Packages, Testing, and Quality master quick reference
Browse 77 commands from 5 focused cheat sheets on page 1 of 1. Each example opens its matching detailed section.
Packages, Testing, and Quality · 15 commands
Python importlib, Metadata, Resources, and Plugins Cheat Sheet
| Use | Syntax | Examples |
|---|---|---|
| Import by name | module = importlib.import_module('package.module') | View examples |
| Resolve a relative import | module = importlib.import_module('.codec', package='app.plugins') | View examples |
| Find a module specification | spec = importlib.util.find_spec('package.module') | View examples |
| Invalidate finder caches | importlib.invalidate_caches() | View examples |
| Read a distribution version | release = importlib.metadata.version('distribution-name') | View examples |
| Read core metadata | details = importlib.metadata.metadata('distribution-name') | View examples |
| Read declared requirements | requirements = importlib.metadata.requires('distribution-name') or [] | View examples |
| Map import to distributions | owners = importlib.metadata.packages_distributions().get('import_name', []) | View examples |
| Get a resource root | root = importlib.resources.files('package_name') | View examples |
| Read a text resource | text = root.joinpath('data/defaults.ini').read_text(encoding='utf-8') | View examples |
| Materialize a resource path | with importlib.resources.as_file(resource) as path: consume(path) | View examples |
| Discover a plugin group | plugins = importlib.metadata.entry_points(group='acme.plugins') | View examples |
| Select one entry point | matches = plugins.select(name='formatter') | View examples |
| Load a plugin object | plugin = entry_point.load() | View examples |
| Handle missing distribution metadata | except importlib.metadata.PackageNotFoundError: use_fallback() | View examples |
Packages, Testing, and Quality · 17 commands
Python Logging and Observability Cheat Sheet
| Use | Syntax | Examples |
|---|---|---|
| Create a module logger | logger = logging.getLogger(__name__) | View examples |
| Set a logger threshold | logger.setLevel(logging.INFO) | View examples |
| Defer message formatting | logger.info('processed %d records', count) | View examples |
| Guard expensive diagnostics | if logger.isEnabledFor(logging.DEBUG): logger.debug('state=%r', build_state()) | View examples |
| Configure a small application | logging.basicConfig(level=logging.INFO, format='%(levelname)s:%(name)s:%(message)s') | View examples |
| Apply dictionary configuration | logging.config.dictConfig({'version': 1, 'handlers': handlers, 'root': root}) | View examples |
| Preserve existing loggers | config = {'version': 1, 'disable_existing_loggers': False, 'root': root} | View examples |
| Add a stream destination | handler = logging.StreamHandler(sys.stdout) | View examples |
| Set a destination threshold | handler.setLevel(logging.ERROR) | View examples |
| Stop duplicate propagation | logger.propagate = False | View examples |
| Attach event context | logger.info('checkout accepted', extra={'order_id': order_id}) | View examples |
| Reuse stable context | request_log = logging.LoggerAdapter(logger, {'request_id': request_id}) | View examples |
| Record the active exception | except OSError: logger.exception('configuration load failed') | View examples |
| Include exception information | logger.error('operation failed', exc_info=True) | View examples |
| Attribute a helper's caller | logger.warning('deprecated call', stacklevel=2) | View examples |
| Filter one destination | handler.addFilter(lambda record: record.name != 'app.health') | View examples |
| Emit structured records | handler.setFormatter(JsonFormatter()) | View examples |
Packages, Testing, and Quality · 12 commands
Python Modules and Packages Cheat Sheet
| Use | Syntax | Examples |
|---|---|---|
| Import a module | import statistics | View examples |
| Import a name | from pathlib import Path | View examples |
| Alias an import | import collections.abc as cabc | View examples |
| Guard script entry | if __name__ == '__main__': main() | View examples |
| Run by module name | python -m package.module | View examples |
| Regular package marker | package/__init__.py | View examples |
| Relative import | from .formatting import render | View examples |
| Declare star-import names | __all__ = ['Client', 'connect'] | View examples |
| Inspect module identity | print(module.__name__) | View examples |
| Inspect source location | print(module.__file__) | View examples |
| Find without importing | spec = importlib.util.find_spec('package.module') | View examples |
| Read package data | text = resources.files('package').joinpath('defaults.json').read_text() | View examples |
Packages, Testing, and Quality · 19 commands
Python Packaging, Virtual Environments, and pyproject.toml Cheat Sheet
| Use | Syntax | Examples |
|---|---|---|
| Create a virtual environment | python -m venv .venv | View examples |
| Seed current packaging tools | python -m venv --upgrade-deps .venv | View examples |
| Invoke the environment directly | .venv/bin/python -m pip --version | View examples |
| Declare backend requirements | requires = ['hatchling>=1.26'] # in [build-system] | View examples |
| Select a build backend | build-backend = 'hatchling.build' | View examples |
| Declare Python compatibility | requires-python = '>=3.11' | View examples |
| Declare a runtime dependency | dependencies = ['httpx>=0.27,<1'] | View examples |
| Publish a console command | acme = 'acme.cli:main' # in [project.scripts] | View examples |
| Declare an optional feature | test = ['pytest>=8'] # in [project.optional-dependencies] | View examples |
| Apply deployment constraints | python -m pip install -c constraints.txt -r requirements.txt | View examples |
| Require artifact hashes | python -m pip install --require-hashes -r requirements.txt | View examples |
| Use a src package layout | src/acme/__init__.py | View examples |
| Open packaged text | text = resources.files('acme').joinpath('data.txt').read_text(encoding='utf-8') | View examples |
| Build sdist and wheel | python -m build | View examples |
| Build only a wheel | python -m build --wheel | View examples |
| Install the built wheel | python -m pip install --force-reinstall dist/acme_tools-1.2.0-py3-none-any.whl | View examples |
| Validate distribution metadata | python -m twine check dist/* | View examples |
| Upload to TestPyPI | python -m twine upload --repository testpypi dist/* | View examples |
| Read installed metadata | version = importlib.metadata.version('acme-tools') | View examples |
Packages, Testing, and Quality · 14 commands
Python unittest and Mocking Cheat Sheet
| Use | Syntax | Examples |
|---|---|---|
| Create a test case | class ParserTests(unittest.TestCase): ... | View examples |
| Declare a test | def test_rejects_empty_input(self): ... | View examples |
| Compare values | self.assertEqual(actual, expected) | View examples |
| Assert an exception | with self.assertRaises(ValueError): parse('') | View examples |
| Assert message text | with self.assertRaisesRegex(ValueError, 'positive'): validate(0) | View examples |
| Prepare each test | def setUp(self): self.client = Client() | View examples |
| Register cleanup | self.addCleanup(resource.close) | View examples |
| Name table cases | with self.subTest(value=value): self.assertTrue(valid(value)) | View examples |
| Create a specified mock | client = Mock(spec=ApiClient) | View examples |
| Patch with signature checks | @patch('module.ApiClient', autospec=True) | View examples |
| Configure a return | client.fetch.return_value = {'status': 'ok'} | View examples |
| Raise or vary calls | client.fetch.side_effect = TimeoutError('slow') | View examples |
| Verify one call | client.fetch.assert_called_once_with('/status') | View examples |
| Use a temporary directory | with tempfile.TemporaryDirectory() as directory: ... | View examples |



