Random DateTime Generator Between Dates

  • Share this:

Code introduction


This function generates a random datetime between the provided start and end dates.


Technology Stack : Fire, datetime

Code Type : Function

Code Difficulty : Intermediate


                
                    
import random
import fire
import datetime

def generate_random_datetime(start_date, end_date):
    """
    Generate a random datetime between the start_date and end_date.

    Args:
        start_date (str): The start date in the format YYYY-MM-DD.
        end_date (str): The end date in the format YYYY-MM-DD.

    Returns:
        datetime.datetime: A random datetime between start_date and end_date.
    """
    start = datetime.datetime.strptime(start_date, '%Y-%m-%d')
    end = datetime.datetime.strptime(end_date, '%Y-%m-%d')
    delta = end - start
    random_seconds = random.randrange(delta.total_seconds())
    return start + datetime.timedelta(seconds=random_seconds)

# Command line interface
if __name__ == '__main__':
    fire.Fire(generate_random_datetime)                
              
Tags: