Pattern Generation using Python time() module

Pattern generation is a fundamental programming concept that involves creating ordered sequences or structures. Python's time module provides tools for working with time-related operations and can be creatively used to generate dynamic patterns that change over time.

This article explores two approaches for creating patterns using Python's time() function: using time as a random seed for pattern generation and creating patterns directly based on current time components.

Method 1: Using Time as Random Seed

This approach uses the current time as a seed for the random number generator to ensure unique patterns are generated each time. Random numbers are mapped to pattern symbols ? even numbers become "*" and odd numbers become "#".

Example

import time
import random

# Get current time and use as random seed
current_time = time.time()
random.seed(current_time)

# Generate random numbers and map to pattern
random_numbers = [random.randint(0, 9) for _ in range(15)]
pattern = ['*' if num % 2 == 0 else '#' for num in random_numbers]

print('Time-seeded pattern:', ''.join(pattern))
print('Random numbers used:', random_numbers)
Time-seeded pattern: #**###*#***##*#
Random numbers used: [3, 8, 6, 1, 9, 7, 4, 1, 8, 2, 0, 1, 1, 4, 3]

Method 2: Pattern Based on Time Components

This method extracts hours, minutes, and seconds from the current time and creates a pattern where each time component is represented by a different symbol ? '#' for hours, '*' for minutes, and '-' for seconds.

Example

import time

# Get current time and extract components
current_time = int(time.time())

# Extract time components
hours = (current_time // 3600) % 24
minutes = (current_time // 60) % 60  
seconds = current_time % 60

# Create pattern based on time components
pattern = '#' * hours + '*' * minutes + '-' * seconds

print(f'Current time: {hours:02d}:{minutes:02d}:{seconds:02d}')
print('Time-based pattern:', pattern)
print(f'Pattern length: {len(pattern)} characters')
Current time: 14:35:22
Time-based pattern: ##############***********************************----------------------
Pattern length: 71 characters

Advanced Time Pattern

Here's a more creative approach that combines both methods to create animated patterns that change every second ?

import time
import random

def generate_time_pattern():
    # Get current time components
    current_time = time.time()
    seconds = int(current_time) % 60
    
    # Use seconds as seed for consistency within the same second
    random.seed(seconds)
    
    # Create a 10x3 pattern grid
    pattern_rows = []
    for row in range(3):
        row_pattern = []
        for col in range(10):
            # Different symbols based on time and position
            if (seconds + col) % 3 == 0:
                symbol = '*'
            elif (seconds + col) % 3 == 1:
                symbol = '#'
            else:
                symbol = '-'
            row_pattern.append(symbol)
        pattern_rows.append(''.join(row_pattern))
    
    return pattern_rows, seconds

# Generate and display pattern
rows, current_second = generate_time_pattern()
print(f'Pattern for second {current_second:02d}:')
for i, row in enumerate(rows, 1):
    print(f'Row {i}: {row}')
Pattern for second 45:
Row 1: *#-*#-*#-*
Row 2: #-*#-*#-*#
Row 3: -*#-*#-*#-

Comparison of Methods

Method Pattern Type Repeatability Use Case
Random Seed Random but reproducible Same within same second Pseudo-random patterns
Time Components Deterministic Changes every second Time visualization
Advanced Structured animation Animated sequences Dynamic displays

Conclusion

Python's time() module enables creative pattern generation through time-based seeding and direct time component mapping. These techniques are useful for creating dynamic visualizations, digital art, and time-aware applications that evolve with real-time data.

Updated on: 2026-03-27T15:38:05+05:30

395 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements