from typing import List, Dict, Optional, Any from loguru import logger def safe_float(value, default=0.0): """安全转换为float,处理None和空值""" if value is None: return default try: return float(value) except (ValueError, TypeError): return default def safe_int(value, default=0): """安全转换为int""" if value is None: return default try: return int(float(value)) except (ValueError, TypeError): return default def safe_str(self, value: Any, default: str = '') -> str: """安全转换为str""" if value is None: return "" try: return str(value) except Exception as e: logger.error(f"safe_str error: {e}") return ""