【发布时间】:2016-11-03 11:12:52
【问题描述】:
我在尝试解析迄今为止的字符串时遇到错误。
ValueError: 未知字符串格式
这是我的代码
dateString = "02/11/2016"
print dateString
dt = parse(dateString)
item.date = calendar.timegm(dt.utctimetuple())
print dt
有趣的是,它在抛出错误之前打印了正确的日期。这是完整的日志
2016 年 2 月 11 日 2016-02-11 00:00:00 艺术。 10、逗号 1、字母 e Traceback (最近一次通话最后):文件“institutional-docs.py”,第 60 行,在 dt = parse(dateString) 文件 "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/dateutil/parser.py", 第 697 行,解析中 返回 DEFAULTPARSER.parse(timestr, **kwargs) 文件“/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/dateutil/parser.py”, 第 303 行,解析中 raise ValueError, "unknown string format" ValueError: unknown string format
【问题讨论】:
-
似乎很奇怪它对我有用。您是否从示例中剪切并粘贴了代码?我唯一能想到的是,字符串中可能存在某种类型的隐藏字符。
-
@aquil.abdullah 有没有办法让我检查一下?
-
@aquil.abdullah 我使用的数据来自废弃的数据。我正在转义 unicode 字符。这就是我正在做的忽略他们
unicodedata.normalize('NFKD', dateString).encode('ascii','ignore') -
查看字符串中是否有任何隐藏字符的最简单方法是记录
print repr(dateString)的结果 -
@aquil.abdullah 它的印刷品
'2 nov 2016'。你能告诉我如何删除它们吗?我刚开始使用python