datetime module handles dates and times. Use datetime.datetime with tzinfo for timezone awareness, pytz for reliable timezone handling. Methods: astimezone(), replace(tzinfo=), timezone conversions. Consider DST transitions, UTC conversions.
os module provides OS-independent interface for operating system operations. Functions: os.path for path manipulation, os.environ for environment variables, os.walk for directory traversal. Consider platform differences, security implications.
sys provides system-specific parameters/functions: sys.path for module search, sys.argv for command arguments, sys.stdin/stdout/stderr for I/O. Handle interpreter interaction, system limitations.
urllib handles URL operations: request handling, parsing, encoding. Modules: request for HTTP, parse for URL parsing, error for exceptions. Consider error handling, security, timeout configuration.
time provides time-related functions: time() for timestamps, sleep() for delays, strftime() for formatting. Handle different time representations, platform differences. Consider timezone implications.
enum provides enumeration support: Enum class, auto() for automatic values. Supports unique/non-unique values, custom behavior. Consider type safety, value comparison, serialization needs.
statistics provides statistical functions: mean(), median(), mode(), stdev(). Supports different types of averages, variance calculations. Consider numerical stability, data types, population vs sample.
operator provides function equivalents of operators: itemgetter(), attrgetter() for data access, add(), mul() for arithmetic. Useful in functional programming, sorting. Consider performance implications.
Collections module provides specialized container types: defaultdict (automatic default values), Counter (counting hashable objects), deque (double-ended queue), namedtuple (tuple with named fields), OrderedDict (ordered dictionary pre-3.7). Each optimized for specific use cases and performance requirements.
itertools provides functions for efficient iteration: combinations(), permutations(), product() for combinatorics; cycle(), repeat() for infinite iterators; chain(), islice() for iterator manipulation. Memory efficient for large datasets.
concurrent.futures provides high-level interface for asynchronous execution: ThreadPoolExecutor for I/O-bound tasks, ProcessPoolExecutor for CPU-bound tasks. Supports map(), submit(), as_completed(). Handle thread/process management, exceptions.
platform provides system information: system(), machine(), python_version(). Access hardware, OS details, Python environment. Consider cross-platform compatibility, information security.
re module provides regular expression operations: compile(), match(), search(), findall(). Supports patterns, groups, flags. Consider using raw strings (r'pattern'), pre-compilation for performance. Handle different regex patterns and flags.
argparse handles command-line argument parsing: argument types, help messages, subcommands. Supports required/optional arguments, default values, custom actions. Consider user interface design, error handling.
csv handles CSV file operations: reading, writing, different dialects. Supports DictReader/DictWriter for named columns. Handle different formats, encoding issues, custom dialects. Consider large file handling.
random provides pseudo-random number generation: randint(), choice(), shuffle(). Supports different distributions, seeding. Consider cryptographic needs (use secrets instead), reproducibility requirements.
subprocess manages external processes: run(), Popen for process control. Handle command execution, I/O redirection, process communication. Consider security, platform differences, error handling.
multiprocessing provides process-based parallelism: Process class, Pool for worker pools. Handle process creation, communication, synchronization. Consider GIL bypass, resource sharing, cleanup.
json module handles JSON encoding/decoding. Methods: dumps()/loads() for strings, dump()/load() for files. Supports custom serialization with default/object_hook. Handle encoding issues, pretty printing, security considerations.
logging provides flexible event logging: different levels (DEBUG to CRITICAL), handlers, formatters. Configure using basicConfig() or dictConfig(). Consider log rotation, formatting, handling in different environments.
pathlib provides object-oriented interface for file system paths. Path class methods: glob(), mkdir(), touch(), resolve(). More readable than os.path, handles platform differences. Consider migration from os.path.
functools provides tools for functional programming: partial() for partial application, lru_cache() for caching, reduce() for reduction operations. Includes wraps() for preserving function metadata. Consider performance implications.
pickle handles Python object serialization: dump()/load() for files, dumps()/loads() for bytes. Consider security implications, version compatibility. Handle custom object serialization, protocol versions.