我有2016-01-01
之类的日期字符串,我希望生成HH:MM:SS
并添加到其中,使其变为:%Y-%m-%dT%H:%M:%S
。所以现在我需要生成随机的小时,分钟和秒,或者如何生成两位数:randint(00, 24)
,即00, 06, 09
而不是0, 6, 9
?
答案 0 :(得分:4)
您可以使用以下内容从整数“myinteger”转换字符串:
"{:02d}".format(myinteger)
这样它总会显示至少2个数字(00,01,...,09,10,...... 100,......)
答案 1 :(得分:1)
要回答原始问题,要将数字填充为0,您只需使用string.zfill(n)
,其中n
是所需的最小字符数。例如:
from random import random
import math
num = math.floor(random() * 24)
num = str(int(num))
print num.zfill(2) # => random num between 00 and 23
但是,看起来你只需要解析一个日期并输出一个日期时间 - 应该更像这样:
import time
dt = '2016-01-01'
print time.strptime(dt, '%Y-%m-%d')
您可以将日期修改为对象并显示/解析您选择的任何细节。
答案 2 :(得分:0)
您可以像这样格式化整数值的显示
"%.2d" % (int_value)
在示例中,代码如下:
print "%.2d" % 2
显示器
02