最近在单位用 Python 用 FastApi 开了个新坑,数据库记录 created_at 的时候需要自动填充当前时区的时间,故选用 datetime.now(ZoneInfo("Asia/Shanghai"))。但是在测试运行的时候发现抱报错 zoneinfo._common.ZoneInfoNotFoundError: 'No time zone found with key Asia/Shanghai'。经查询,ZoneInfo 在获取时区信息时会调用 tzdata,如果没安装 tzdata 就会尝试从系统获取,但是在 Windows 中获取不到时区信息导致此报错。所以安装个 tzdata 就能保证跨系统的正常运行了。pip install tzdata