Python Specialization Question Bank May-2026
NPTEL Syllabus:
Variables and Expressions: Design your own calculator
Loops and Conditionals: Hopscotch once again
Lists, Tuples and Conditionals: Lets go on a trip
Abstraction Everywhere: Apps in your phone
Counting Candies: Crowd to the rescue
Birthday Paradox: Find your twin
Google Translate: Speak in any Language
Currency Converter: Count your foreign trip expenses
Monte Hall: 3 doors and a twist
Sorting: Arrange the books
Searching: Find in seconds
Substitution Cipher: What’s the secret!!
Sentiment Analysis: Analyse your Facebook data
20 questions game: I can read your mind
Permutations: Jumbled Words
Spot the similarities: Dobble game
Count the words: Hundreds, Thousands or Millions.
Rock, Paper and Scissor: Cheating not allowed!!
Lie detector: No lies, only TRUTH
Calculation of the Area: Don’t measure.
Six degrees of separation: Meet your favourites
Image Processing: Fun with images
Tic tac toe: Let’s play
Snakes and Ladders: Down the memory lane.
Recursion: Tower of Hanoi
Page Rank: How Google Works!!
Module-1: Fundamentals of Programming & Expressions
1. Design a simple expression to implement a calculator that performs addition and
multiplication based on user input.
2. Apply conditional statements to identify whether a given number is even or odd in a
calculator program
3. Analyze the output of a loop-based hopscotch program for given input steps.
4. Analyze the difference between for loop and while loop in implementing hopscotch
movement logic
5. Implement a loop to display the first five hopscotch steps for a player.
6. Design an expression to calculate the total score of a player after multiple hopscotch jumps.
7. Apply arithmetic operators to create a simple scoring system for a hopscotch game
1. Analyze the efficiency of loop-based vs condition-based game logic in hopscotch.
2. Compare loop-controlled and condition-controlled approaches for handling repeated user inputs in
a simple game application.
3. Implement a calculator that handles multiple operations using conditional statements.
4. Analyze the behavior of a calculator program when invalid operators or divide-by-zero conditions
are provided. Suggest improvements.
5. Analyze the impact of nested loops on the performance of a hopscotch game simulation with
multiple players.
6. Apply arithmetic and relational operators to design a jump-validation system for a hopscotch game.
7. Compare loop-controlled and condition-controlled approaches for handling repeated user inputs in
a simple game application
1. Design and develop a menu-driven calculator supporting addition, subtraction, multiplication, and
division.
• Write algorithm
• Implement logic using loops and conditionals
• Demonstrate with at least 3 test cases
2. Analyze the working of a loop-based Hopscotch game.
• Identify inefficiencies in repeated condition checking
• Propose optimized logic using structured control flow
• Justify improvement in performance
3. Implement a game score tracker using loops and conditional statements.
• Continuously update player scores
• Analyze how loop termination conditions affect performance
• Demonstrate the working with example inputs
4. Analyze a loop-based game simulation where a player gains or loses points after each move.
• Identify redundant conditional checks
• Suggest optimized loop and condition structure
• Compare performance before and after optimization
5. Analyze the limitations of a basic calculator program and redesign it to handle invalid inputs
and repeated operations efficiently.
• Identify logical issues
• Propose improved control flow
• Demonstrate enhanced functionality with examples
Module 2: Data Structures & Collections
1. Apply list operations to store and retrieve travel destinations efficiently.
2. Apply tuple operations to store travel package details such as destination, budget, and
duration.
3. Differentiate when searching is preferred over sorting in a dataset.
4. Analyze the difference between linear search and binary search for a small travel dataset
5. Analyze how sorting improves the efficiency of searching in a dataset
6. Differentiate between mutable lists and immutable tuples with suitable examples from trip
management.
7. Use a searching technique to check whether a given destination exists in a travel dataset.
1. Apply sorting techniques to arrange books based on title or author
2. Analyze time complexity differences between linear search and binary search.
3. Implement list operations to manage a travel booking dataset containing destination names,
cost, and duration.
4. Apply linear search to find a specific destination in a travel dataset and analyze its
performance for increasing dataset size.
5. Develop a simple program to sort student records stored in lists based on marks or names.
6. Compare sorting datasets using ascending and descending order. Analyze how sorting order
impacts retrieval efficiency.
1. A travel company maintains a list of destinations booked by customers.
• Apply a suitable sorting technique to organize destinations based on popularity or name
• Implement an efficient search method to find a specific destination
• Analyze which method performs better for large datasets and justify
2. Design a Trip Management System using lists and tuples.
• Store destination, budget, and duration
• Provide efficient retrieval (search/filter)
• Draw structure and explain working
3. A digital library stores thousands of books in a dataset.
• Apply a suitable sorting technique to organize books by title or author
• Implement a searching method to locate a required book
• Analyze the efficiency of the chosen methods for large datasets
4. Develop a movie recommendation dataset management system.
• Organize movie records using sorting techniques
• Implement searching based on movie name or genre
• Analyze the performance of the system for large datasets
5. Design a Student Record Management System using lists and tuples.
• Store student name, roll number, and marks
• Implement sorting based on marks or names
• Provide efficient search functionality and explain the workflow
Module 3: Abstraction & Real-world Applications
1. Analyze how Google Translate handles ambiguity in language translation.
2. Implement abstraction by identifying inputs and outputs of a currency converter
3. Analyze how abstraction simplifies the design of mobile applications used in daily life
4. Analyze the challenges faced by translation systems while handling multiple languages.
5. Apply abstraction concepts to model the workflow of an online ticket booking application
6. Identify and implement the major functional modules of a simple translation application
1. Create a basic algorithm for a currency converter with real-time updates
2. Analyze the challenges faced by a language translation system while converting regional languages
into English.
3. Design a simple abstraction model for a mobile app (inputs, processing, outputs).
4. Implement abstraction principles to separate user interface and backend processing in a mobile
banking application.
5. Evaluate the effectiveness of abstraction in reducing complexity in mobile applications such as
currency converters or translation apps.
6. Create a basic architecture for a multilingual chat application supporting message translation and
user interaction modules.
1. Design a Currency Converter mobile application using abstraction principles.
• Identify input, processing, output modules
• Draw block diagram
• Explain how abstraction improves design
2. Develop a language translation system (like Google Translate):
• Define system architecture
• Explain abstraction layers
• Suggest improvements for handling ambiguity
3. Design a mobile banking application using abstraction principles.
• Identify user interface, processing, and database modules
• Draw system architecture diagram
• Explain how abstraction improves security and maintainability
4. Develop a weather forecasting mobile application using abstraction concepts.
• Define input, processing, and output modules
• Draw block diagram
• Explain interaction between modules
5. Analyze the architecture of a voice assistant application (e.g., Siri or Google Assistant).
• Explain abstraction layers involved
• Evaluate challenges in speech recognition and response generation
• Suggest suitable improvements
Module 4: Probability, Logic & Mathematical Thinking
1. Evaluate the fairness of the Monty Hall problem strategy.
2. Analyze the effect of increasing the number of people on the probability in the Birthday
Paradox
3. Analyze why the birthday paradox gives counterintuitive results.
4. Evaluate whether switching choices in the Monty Hall problem always gives a better
winning probability.
5. Analyze how permutations are used in arranging jumbled words
6. Analyze the relationship between randomness and probability in the Monty Hall game
1. Analyze the probability distribution in the candy counting problem
2. Evaluate which probability model (Birthday Paradox or Permutations) is more reliable for
prediction.
3. Analyze the impact of increasing sample size on the probability outcome in the Birthday Paradox
4. Analyze how randomness affects the outcome of candy distribution and probability prediction
problems
5. Evaluate the advantages and limitations of probability simulations compared to mathematical
calculations.
6. Develop a simple simulation model to demonstrate probability outcomes in a candy counting
experiment.
1. Analyze the Monty Hall problem:
• Explain probability before and after switching
• Evaluate whether switching strategy is beneficial
• Justify with reasoning
2. Develop a simulation model to demonstrate the Birthday Paradox:
• Design algorithm
• Run multiple iterations
• Interpret results
3. Analyze the probability distribution in a candy selection experiment.
• Calculate possible outcomes
• Compare theoretical and experimental probabilities
• Evaluate factors affecting prediction accuracy
4. Develop a simulation model to demonstrate permutations in jumbled word formation.
• Design algorithm
• Generate possible arrangements
• Interpret the generated results
5. Analyze the Birthday Paradox for different group sizes.
• Compare probability outcomes for small and large groups
• Evaluate why the probability increases rapidly
• Justify conclusions with calculations or observations
Module 5: Algorithms, Games & Decision Systems
1. Analyze how decision trees help in implementing the 20 Questions game
2. Analyze decision-making steps in the 20 questions game.
3. Apply recursion logic to identify base case in Tower of Hanoi.
4. Apply looping constructs to simulate dice movement in a Snakes and Ladders game.
5. Analyze the role of recursion in reducing repetitive code in game logic
6. Analyze the sequence of moves involved in solving the Tower of Hanoi problem
1. Design a decision tree for the 20 questions game.
2. Develop a simple recursive algorithm to solve the Tower of Hanoi problem for n disks
3. Implement a simple algorithm for Tic Tac Toe game logic.
4. Implement movement logic for a Snakes and Ladders game using loops and conditional statements
5. Apply recursion to generate all possible moves in a Tic Tac Toe game and analyze the outcome
1. Design a Snakes and Ladders game system:
• Model board using data structures
• Implement movement logic using dice
• Optimize for multiple players
2. Design and implement a Tic Tac Toe game:
• Write algorithm
• Implement game logic
• Handle winning conditions
3. Design a Rock-Paper-Scissors game system.
• Write algorithm for player interaction
• Implement conditional logic for winner selection
• Extend the system for multiple rounds and score tracking
4. Develop a recursive solution for the Tower of Hanoi problem.
• Write recursive algorithm
• Explain base case and recursive calls
• Analyze the number of moves required for n disks
5. Analyze the working of the 20 Questions game.
• Explain decision-making logic using decision trees
• Evaluate how the number of questions affects prediction accuracy
• Suggest improvements for better guessing efficiency
Module 6: Advanced Computing & Intelligent Systems
1. Create a simple rule to detect sentiment from a given sentence.
2. Analyze how PageRank ranks web pages based on links.
3. Analyze how word frequency helps in counting words in large text datasets
4. Apply basic image processing operations to identify brightness changes in an image
5. Analyze the role of hyperlinks in improving PageRank results for search engines.
6. Analyze how sentiment analysis classifies text as positive, negative, or neutral.
1. Analyze how substitution cipher ensures data security.
2. Develop a simple sentiment analysis model using keyword matching.
3. Analyze how PageRank algorithm determines the importance of web pages using link structures
4. Create a simple word-count analysis system to identify the most frequent words in a text document.
5. Evaluate the effectiveness of substitution cipher compared to modern encryption techniques
6. Develop a simple webpage ranking model using incoming and outgoing link analysis
1. Analyze and evaluate the working of the PageRank algorithm used in search engines.
• Explain link-based ranking mechanism
• Analyze the impact of incoming and outgoing links
• Evaluate limitations and suggest improvements
2. Design and develop a simple sentiment analysis system using keyword matching.
• Define preprocessing steps
• Implement sentiment classification logic
• Demonstrate analysis using sample sentences
3. Analyze the limitations of substitution cipher techniques and redesign the system with
improved security features.
• Explain encryption and decryption process
• Identify security weaknesses
• Suggest enhanced encryption logic
4. Develop an image processing application for basic image enhancement.
• Apply operations such as grayscale conversion or edge detection
• Design workflow and algorithm
• Analyze the output generated by the system