繁体   English   中英

使用 python 按顺序生成特定月份的随机日期

[英]Generate random date of a particular month in order using python

如何以这种特定格式生成特定月份的随机日期。按顺序,即从本月的 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')

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM