如何以这种特定格式(即从月的1号到该月的30号)以特定的格式生成特定月份的随机日期
2011-08-12T20:17:46.384Z
对此进行了尝试,但它以常规时间日期格式生成。该代码随机生成,但我需要从该月的1到30/31的顺序值
from datetime import datetime
d1 = datetime.strptime('1/1/2010 1:30 PM', '%m/%d/%Y %I:%M %p')
d2 = datetime.strptime('1/1/2011 4:50 AM', '%m/%d/%Y %I:%M %p')
print(random_date(d1, d2))
也许您可以得到日期时间之间的秒数差异,然后使用random.randrange
from datetime import datetime, timedelta
import random
def random_date(d1, d2):
delta = d2 - d1
seconds = delta.total_seconds()
n = random.randrange(seconds)
return d1 + timedelta(seconds=n)
d1 = datetime.strptime('1/1/2010 1:30 PM', '%m/%d/%Y %I:%M %p')
d2 = datetime.strptime('1/1/2011 4:50 AM', '%m/%d/%Y %I:%M %p')
print(random_date(d1, d2).isoformat(timespec='milliseconds')+'Z')