这是我要运行的代码
from datetime import datetime
date="08/30/2017 10:02 pm (PDT)"
dt = datetime.strptime(date, '%m/%d/%Y %I:%M %p (%Z)')
日期是具有值的字符串08/30/2017 10:02 PM(PDT)
对我来说看起来很好,但是python给我这个错误:
time data '08/30/2017 10:02 PM (PDT)' does not match format '%m/%d/%Y %I:%M %p (%Z)'
该代码在使用python 2.7的远程计算机上运行.但是,如果我手动将这些代码键入本地python终端.它工作得很好.
有什么可以改变的吗?
(我试图在unicode / str之间更改日期,没有区别)
解决方法:
检查TZ环境变量的值. time.strptime使用TZ变量来消除时区缩写的歧义,因为否则它们将不是唯一的.我可以使用TZ = Europe / Berlin重现匹配错误,但是使用TZ = America / Tijuana可以成功解析.
如果另一台机器具有仅使用数字时区的TZ数据,则可能会出现差异,这是某些时区的最新变化(2017年)(这也意味着工作该机器的机器可悲)过时的时区数据库).
标签:python-datetime,python 来源: https://codeday.me/bug/20191108/2008463.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。