Write a program in Python to generate an even (length) series of random four-digit pin. Get the length from user and ask until it's valid

This program generates a series of random four-digit PIN numbers. The user must provide an even number for the series length, and the program will keep asking until a valid even number is entered.

Problem Requirements

We need to:

  • Get series length from user input

  • Validate that the length is even

  • Generate random four-digit PIN numbers

  • Display the series using pandas

Step-by-Step Solution

Step 1: Input Validation

First, we create a loop to get valid even input from the user ?

while(True):
    size = int(input("enter the series size "))
    if(size % 2 == 1):
        print("oops! enter an even number!")
        continue
    else:
        break

Step 2: Generate Random PINs

We use random.sample() to select 4 random digits without replacement ?

import random
import string

num = string.digits  # '0123456789'
pins = []

for i in range(size):
    rand_pin = random.sample(num, 4)
    pins.append("".join(rand_pin))

Step 3: Create Pandas Series

Finally, we create and display the series ?

import pandas as pd

series = pd.Series(pins)
print("Random four digit pin number series")
print(series)

Complete Program

# importing required libraries
import pandas as pd
import random
import string

# digits for generating PINs
num = string.digits
pins = []

# get valid even input from user
while(True):
    size = int(input("enter the series size "))
    if(size % 2 == 1):
        print("oops! enter an even number!")
        continue
    else:
        break

# generate random four-digit PINs
for i in range(size):
    rand_pin = random.sample(num, 4)
    pins.append("".join(rand_pin))

# create and display series
series = pd.Series(pins)
print("Random four digit pin number series")
print(series)

Sample Output

enter the series size 3
oops! enter an even number!
enter the series size 5
oops! enter an even number!
enter the series size 4
Random four digit pin number series
0    0813
1    7218
2    6739
3    8390
dtype: object

How It Works

The program uses string.digits which contains '0123456789'. The random.sample(num, 4) function selects 4 unique digits randomly, ensuring no repeated digits in a single PIN. The join() method combines these digits into a string, and pandas Series displays them in a formatted manner.

Conclusion

This program demonstrates input validation, random number generation, and pandas Series creation. The key is using random.sample() for unique digit selection and loop-based validation for even input requirements.

Updated on: 2026-03-25T16:34:08+05:30

453 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements