Spaces:
Paused
Paused
File size: 794 Bytes
a601b1d |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
"""
Data validation utilities
"""
from typing import Optional
def safe_divide(numerator: float, denominator: float, default: float = 0.0) -> float:
"""
Safely divide two numbers, returning default if denominator is zero
Args:
numerator: Number to divide
denominator: Number to divide by
default: Default value if division by zero
Returns:
Result of division or default value
"""
return numerator / denominator if denominator != 0 else default
def calculate_percentage(part: float, whole: float) -> float:
"""
Calculate percentage with safe division
Args:
part: Part value
whole: Whole value
Returns:
Percentage (0-100)
"""
return safe_divide(part * 100, whole, 0.0) |