Skip to Content
Course content

Solution: Hands-On Coding Challenges


1. Introduction to Python

Challenge: Print "Hello, Python!" to the console.

# Solution
print("Hello, Python!")

Challenge: Check the Python version installed on your system using a script.

# Solution
import sys
print("Python version:", sys.version)

2. Python Basics

Challenge: Write a program that accepts a user's name and greets them with "Hello, [name]!"

# Solution
name = input("Enter your name: ")
print(f"Hello, {name}!")

Challenge: Write a program to calculate the sum of two numbers entered by the user.

# Solution
num1 = int(input("Enter first number: "))
num2 = int(input("Enter second number: "))
print("Sum:", num1 + num2)

3. Working with Data Structures

Lists

Challenge: Create a list of 5 numbers and print the sum of all the numbers in the list.

# Solution
numbers = [1, 2, 3, 4, 5]
print("Sum:", sum(numbers))

Tuples

Challenge: Write a program to create a tuple with elements from 1 to 5 and print the third element.

# Solution
my_tuple = (1, 2, 3, 4, 5)
print("Third element:", my_tuple[2])

Dictionaries

Challenge: Create a dictionary with keys as names and values as ages. Print all names (keys) in the dictionary.

# Solution
people = {"Alice": 25, "Bob": 30, "Charlie": 35}
print("Names:", list(people.keys()))

Sets

Challenge: Write a program to find the intersection of two sets.

# Solution
set1 = {1, 2, 3, 4}
set2 = {3, 4, 5, 6}
print("Intersection:", set1 & set2)

4. Functions and Modules

Challenge: Write a function to calculate the factorial of a given number.

# Solution
def factorial(n):
    if n == 0:
        return 1
    return n * factorial(n - 1)

print(factorial(5))  # Output: 120

Challenge: Import the math module and use it to calculate the square root of 64.

# Solution
import math
print("Square root of 64:", math.sqrt(64))

5. Object-Oriented Programming (OOP)

Classes and Objects

Challenge: Create a Car class with attributes make and model, and a method display_info() that prints them.

# Solution
class Car:
    def __init__(self, make, model):
        self.make = make
        self.model = model
    
    def display_info(self):
        print(f"Make: {self.make}, Model: {self.model}")

my_car = Car("Toyota", "Camry")
my_car.display_info()

Inheritance

Challenge: Create a Dog class that inherits from an Animal class and overrides a method.

# Solution
class Animal:
    def sound(self):
        print("Some generic sound")

class Dog(Animal):
    def sound(self):
        print("Bark")

my_dog = Dog()
my_dog.sound()

6. File Handling

Challenge: Write a program to create a text file and write "Hello, File!" into it.

# Solution
with open("example.txt", "w") as file:
    file.write("Hello, File!")

Challenge: Write a program to read and print the contents of the text file created above.

# Solution
with open("example.txt", "r") as file:
    content = file.read()
    print(content)

7. Error and Exception Handling

Challenge: Write a program to handle a ZeroDivisionError exception.

# Solution
try:
    result = 10 / 0
except ZeroDivisionError:
    print("Cannot divide by zero!")

8. Python for Data Analysis

NumPy

Challenge: Create a NumPy array of numbers from 1 to 5 and calculate the mean.

# Solution
import numpy as np
arr = np.array([1, 2, 3, 4, 5])
print("Mean:", np.mean(arr))

Pandas

Challenge: Create a Pandas DataFrame with columns Name and Age and print it.

# Solution
import pandas as pd
data = {"Name": ["Alice", "Bob"], "Age": [25, 30]}
df = pd.DataFrame(data)
print(df)

9. Advanced Topics in Python

Generators

Challenge: Create a generator to yield numbers from 1 to 3.

# Solution
def my_generator():
    for i in range(1, 4):
        yield i

for num in my_generator():
    print(num)

Regular Expressions

Challenge: Write a regex to find all email addresses in a string.

# Solution
import re
text = "Contact us at support@example.com or admin@domain.com."
emails = re.findall(r'\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,}\b', text)
print("Emails:", emails)

10. Working with APIs

Making API Requests

Challenge: Use the requests library to fetch data from an API (e.g., https://jsonplaceholder.typicode.com/todos/1).

# Solution
import requests
response = requests.get("https://jsonplaceholder.typicode.com/todos/1")
print(response.json())

Parsing JSON Responses

Challenge: Parse the JSON response to print the title of the fetched data.

# Solution
data = response.json()
print("Title:", data["title"])

These challenges are designed to provide hands-on experience with Python while covering essential concepts.

Commenting is not enabled on this course.