背景
- Python項目部署到新的服務器,服務器部署了同樣的開發環境,可是項目卻啟動失敗,報錯:AttributeError: 'backports.zoneinfo.ZoneInfo' object has no attribute 'localize'
錯誤
- AttributeError: 'backports.zoneinfo.ZoneInfo' object has no attribute 'localize',如下圖

開發環境
- Python=3.7.5
- pytz~=2019.2
- PyQt5~=5.13.0
原因
- backports.zoneinfo.ZoneInfo對象需要用到TZlocal這個模塊,但是最新的TZlocal模塊中已經將localize這個方法刪除了,而在pip安裝依賴模塊時,會自動下載最新的版本模塊,所以系統報錯。
解決方法
- 將TZlocal模塊版本更新為2.1即可
- pip install tzlocal==2.1 -i http://pypi.douban.com/simple --trusted-host pypi.douban.com
測試
- TZlocal,版本最新

- TZlocal,版本2.1

