Skip to main content

Python

Python conventions are defined by PEP 8. Follow it.

Casing Rules

ElementConventionExample
ClassesPascalCaseOrderService, UserRepository
Functions / methodssnake_caseget_user_by_id, process_payment
Variablessnake_caseuser_count, is_active
Module-level constantsSCREAMING_SNAKE_CASEMAX_RETRY_COUNT, DEFAULT_TIMEOUT
Private members_snake_case prefix_connection, _validate_input
"Dunder" methods__snake_case____init__, __repr__
Modules / packagessnake_caseorder_service, user_repository

File Naming

# Modules match their primary class or purpose (snake_case):
order_service.py
user_repository.py
payment_processor.py

# Tests mirror the source file:
test_order_service.py
test_user_repository.py

Package Structure

src/
└── {package_name}/
├── __init__.py
├── models/
├── services/
├── repositories/
└── utils/
tests/
├── unit/
└── integration/