Random Data Generator for DateTime, Email, and Phone Number

  • Share this:

Code introduction


This script defines three functions to generate random datetime, email addresses, and phone numbers.


Technology Stack : Fire, datetime, random

Code Type : Python Function

Code Difficulty : Intermediate


                
                    
import random
import fire
import datetime

def generate_random_datetime(format='%Y-%m-%d %H:%M:%S'):
    """
    Generate a random datetime within the last 30 days.
    """
    delta = datetime.timedelta(days=random.randint(0, 30))
    random_datetime = datetime.datetime.now() - delta
    return random_datetime.strftime(format)

def generate_random_email():
    """
    Generate a random email address.
    """
    domains = ['gmail.com', 'yahoo.com', 'hotmail.com', 'outlook.com']
    return f"{random.randint(1000, 9999)}@{random.choice(domains)}"

def generate_random_phone_number():
    """
    Generate a random phone number in the format +1 (XXX) XXX-XXXX.
    """
    return f"+1 ({random.randint(100, 999)}) {random.randint(1000, 9999)}-{random.randint(1000, 9999)}"

def main():
    pass

if __name__ == '__main__':
    fire.Fire({
        'generate_random_datetime': generate_random_datetime,
        'generate_random_email': generate_random_email,
        'generate_random_phone_number': generate_random_phone_number
    })