我正在尝试解析日期并将其放入正确的格式,这是我迄今为止尝试过的:
import csv
import sys
import os
import re
import fnmatch
import csv
from dateutil.parser import parse as parseDate
from datetime import datetime, time, timedelta
chaine = '16/12/201602:15:00'
date = chaine[:10] + " " + chaine[11:]
print date
newd = parseDate(date, yearfirst=True)
print newd
newd = newd.replace('-','')
newd = newd.replace(':','')
print newd
Run Code Online (Sandbox Code Playgroud)
这是我得到的结果:
16/12/2016 2:15:00
2016-12-16 02:15:00
Traceback (most recent call last):
File "t.py", line 25, in <module>
newd = newd.replace('-','')
TypeError: an integer is required
Run Code Online (Sandbox Code Playgroud)
我在这里想念什么?
谢谢
要修复您当前的逻辑,您需要将newd变量转换为字符串parseDate:
newd = str(newd).replace('-','')
^^^^^^^^^
Run Code Online (Sandbox Code Playgroud)
或者,使用strptime/ strftime:
from dateutil.parser import parse as parseDate
from datetime import datetime, time, timedelta
from time import strftime
chaine = '16/12/201602:15:00'
dt = datetime.strptime(chaine, '%d/%m/%Y%I:%M:%S')
# 16/12/2016 2:15:00
print(dt.strftime("%Y/%m/%d %H:%M:%S"))
#2016-12-16 02:15:00
print(dt.strftime("%Y-%m-%d %H:%M:%S"))
# 20161216 021500
print(dt.strftime("%Y%m%d %H%M%S"))
Run Code Online (Sandbox Code Playgroud)
请参阅另一个 Python 演示。
| 归档时间: |
|
| 查看次数: |
4535 次 |
| 最近记录: |