如何在第一个/日期之前提取月份或数字?

时间:2017-09-26 19:57:22

标签: python

我正在尝试做类似

的事情
date = "9/26/2017"

for %m in date:
    %m = i
    print(format(i, '02d'))

有没有办法获得月份数,以便我可以在它前面放一个0?

我试图在2009年9月26日拍摄并输出09/26/2017。

3 个答案:

答案 0 :(得分:3)

你可以使用format拆分和填充一行中的所有字段,并将转换后的参数解压缩为分割字符串的整数:

"{:02}/{:02}/{:04}".format(*map(int,date.split("/")))

注意:对于第一个号码,您可以使用date.zfill(10)或在所有不同尺寸的条款上应用zfill

"/".join(a.zfill(b) for a,b in zip(date.split("/"),[2,2,4]))

答案 1 :(得分:3)

from datetime import *

d = '9/26/2017'
d = datetime.strptime(d,'%m/%d/%Y').date()
d = datetime.strftime(d,'%m/%d/%Y')
print d
09/26/2017

答案 2 :(得分:1)

如果您以您提到的格式阅读日期,请使用

date = "9/26/2017"
d = date.split("/")
if len(d[0])==1:
    date="0"+date
print(date)