Python 生成从00到24的两位数
我有日期字符串,如Python 生成从00到24的两位数,python,Python,我有日期字符串,如2016-01-01,我想生成HH:MM:SS,并添加到其中,使其成为:%Y-%m-%dT%H:%m:%S。所以现在我需要生成随机的小时、分钟和秒,或者如何生成两位数:randint(00,24)即00,06,09而不是0,6,9?您可以像这样格式化整数值的显示 "%.2d" % (int_value) 在示例中,以下代码: print "%.2d" % 2 显示 02 您可以使用以下命令从整数“myinteger”强制转换字符串: 这样,它将始终显示至少2个数字(00,
2016-01-01
,我想生成HH:MM:SS
,并添加到其中,使其成为:%Y-%m-%dT%H:%m:%S
。所以现在我需要生成随机的小时、分钟和秒,或者如何生成两位数:randint(00,24)
即00,06,09
而不是0,6,9
?您可以像这样格式化整数值的显示
"%.2d" % (int_value)
在示例中,以下代码:
print "%.2d" % 2
显示
02
您可以使用以下命令从整数“myinteger”强制转换字符串:
这样,它将始终显示至少2个数字(00,01,…,09,10,…,100,…)要回答您的原始问题,用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
但是,看起来您只需要解析一个日期并输出一个datetime-这应该像这样做:
import time
dt = '2016-01-01'
print time.strptime(dt, '%Y-%m-%d')
您可以将日期作为对象进行修改,并显示/解析您选择的任何详细信息。只需生成普通数字,将其放入
日期时间
,然后使用.strftime
生成完整的日期字符串。
import time
dt = '2016-01-01'
print time.strptime(dt, '%Y-%m-%d')