# 类型错误：无法比较无时区和有时区的日期时间。

- **ID:** `python/fastapi-datetime-timezone-error`
- **领域:** python
- **类别:** type_error
- **验证级别:** ai_generated
- **修复率:** 80%

## 根因

在比较或计算中混合使用了带时区和不带时区的 datetime 对象。

## 版本兼容性

| 版本 | 状态 | 引入 | 弃用 |
|------|------|------|------|
| 3.x | active | — | — |

## 解决方案

1. **** (90% 成功率)
   ```
   统一使用 `datetime.now(timezone.utc)` 确保所有 datetime 对象带时区。
   ```
2. **** (85% 成功率)
   ```
   在比较前使用 `astimezone(timezone.utc)` 转换。
   ```

## 无效尝试

- **** — 尝试使用 `datetime.utcnow()` 但未设置时区，导致与带时区的时间比较失败。 (70% 失败率)
- **** — 尝试在 Pydantic 模型中使用 `datetime` 但未指定时区，导致序列化时出错。 (60% 失败率)
