根据datetime.strptime()
https://docs.python.org/2/library/datetime.html#strftime-and-strptime- behavior的文档,技术说明(4),%f仅接受1-6个字符:
%f是对C标准中格式字符集的扩展(但在日期时间对象中单独实现,因此始终可用)。与strptime()方法一起使用时,%f伪指令接受1到6位数字和右边的零填充。
我认为您没有正确解决问题。您不应该在字符串前添加零,而应将所有内容都丢弃到6以上(这对时间贡献不大)。
像这样:
s='2014-11-19 00:00:00.0000000'
print (datetime.datetime.strptime((s[:26]).strip(), '%Y-%m-%d %H:%M:%s.%f')).date()