很显然,我已经知道strftime
和strptime
不喜欢字节字符串作为参数,但是我在这里是一个pickle,因为我有点需要读取保存在其中的具有不同字符编码的文件内容,并且我需要处理它们,并将本文档中每行的时间部分发送到strptime()
。time.strptime() - 参数0必须是str,而不是字节
一个快速的解决办法是分割字符串,确保时间只包含数字和破折号,但是有可能以某种方式传递字节对象而不试图找出编码strptime()
?
with open('file.txt', 'rb') as fh:
for line in fh:
time.strptime(line, '%Y-%m-%d ...')
这显然会失败。我认为做repr(line)
,但导致字符串看起来像b'2014-01-07 ...'
,这我可以脱光..
你需要'.decode()',但不知道编码,这不是一件容易的事。 – geoffspear
@Wooble:嗯,它适合日期时间模式,它几乎肯定会适合ASCII。 “ –
”在其中保存了不同的字符编码,我需要处理它们全部“ – geoffspear