我的字符串是:Nov 05 2016 01:30:00PM
我需要删除月份和小时的前导0
输出应该像Nov 5 2016 1:30:00PM
在%和字母之间添加连字符,你无法删除前导零窗口。所以我不能使用该选项。
import time
from_date="2016-10-02T01:45:00"
conv=time.strptime(from_date,"%Y-%m-%dT%H:%M:%S")
conDateTime = time.strftime("%b %d %Y %I:%M:%S%p",conv)
print conDateTime
day = time.strftime("%d",conv).lstrip('0')
hour = time.strftime("%H",conv).lstrip('0')
conDateTime = conDateTime.replace(time.strftime("%d",conv), day)
conDateTime = conDateTime.replace(time.strftime("%I",conv), hour)
print conDateTime
Out put:Oct 2 216 1:45:00 AM 它删除0月份和年份
conDateTime = conDateTime.replace(time.strftime("%d",conDateTime), day)
给出以下错误TypeError:参数必须是9项序列,而不是str
答案 0 :(得分:0)
我认为这不是一个简单的方法。您需要单独转换零件,然后将它们连接在一起。这是在Python 2和Python 3上运行的一种方法。
import time
time_formats = ('%b', '%d %Y', '%I:%M:%S%p')
def strip_time(fmt, t):
return time.strftime(fmt, t).lstrip('0')
from_date = "2016-10-02T01:45:00"
conv = time.strptime(from_date, "%Y-%m-%dT%H:%M:%S")
conDateTime = [strip_time(fmt, conv) for fmt in time_formats]
print(' '.join(conDateTime))
<强>输出强>
Oct 2 2016 1:45:00AM