DEV Community

Cover image for Day 2: Python Control Structures, Functions, Modules, and Data Structures
arjun
arjun

Posted on

Day 2: Python Control Structures, Functions, Modules, and Data Structures

Day 2: Python Control Structures, Functions, Modules, and Data Structures

Welcome to Day 2! Today, we’ll not only wrap up Python’s control structures but also explore functions, modules, and fundamental data structures. By the end, you’ll be equipped to build efficient, reusable, and organized code. Let’s get started!


Python Control Structures Recap

We learned how if, elif, and else help us make decisions and how loops (for and while) help repeat tasks. Here's a quick practice problem for reinforcement:

Challenge: Write a program that checks whether numbers from 1 to 10 are odd or even.

for i in range(1, 11):
    if i % 2 == 0:
        print(f"{i} is even.")
    else:
        print(f"{i} is odd.")
Enter fullscreen mode Exit fullscreen mode

Functions in Python

Functions are blocks of reusable code that perform specific tasks.

1. Defining and Calling Functions

def greet(name):
    return f"Hello, {name}!"

print(greet("Arjun"))
Enter fullscreen mode Exit fullscreen mode
  • Defining: Use def followed by the function name and parameters.
  • Calling: Use the function name with arguments to execute it.

2. Function Arguments and Return Values

  • Arguments: Input values passed to the function.
  • Return Values: Results returned by the function.

Example:

def add_numbers(a, b):
    return a + b

result = add_numbers(5, 3)
print(f"The sum is {result}.")
Enter fullscreen mode Exit fullscreen mode

Modules in Python

Modules are collections of functions and variables. Python has built-in modules, and you can create your own.

1. Using Built-In Modules

import math
import random

print(math.sqrt(16))  # Square root of 16
print(random.randint(1, 10))  # Random number between 1 and 10
Enter fullscreen mode Exit fullscreen mode

2. Writing Your Own Module

Save the following in a file named calculator.py:

def add(a, b):
    return a + b

def subtract(a, b):
    return a - b
Enter fullscreen mode Exit fullscreen mode

Use it in another script:

from calculator import add, subtract

print(add(10, 5))  # Output: 15
print(subtract(10, 5))  # Output: 5
Enter fullscreen mode Exit fullscreen mode

Data Structures in Python

Python provides versatile data structures like lists, tuples, sets, and dictionaries for managing data.

1. Lists

A list is a collection of ordered, mutable items.

fruits = ["apple", "banana", "cherry"]
fruits.append("orange")
print(fruits[1])  # Access item at index 1
Enter fullscreen mode Exit fullscreen mode

2. Tuples

Tuples are immutable lists.

dimensions = (10, 20, 30)
print(dimensions[0])  # Access item at index 0
Enter fullscreen mode Exit fullscreen mode

3. Sets

Sets are unordered collections of unique items.

numbers = {1, 2, 3, 3}
numbers.add(4)
print(numbers)  # Output: {1, 2, 3, 4}
Enter fullscreen mode Exit fullscreen mode

4. Dictionaries

Dictionaries store key-value pairs.

user = {"name": "Alice", "age": 25}
print(user["name"])  # Access value by key
Enter fullscreen mode Exit fullscreen mode

Practice Example: Real-World Application

Create a dictionary to store and retrieve user information:

users = {}
for _ in range(3):
    name = input("Enter your name: ")
    age = int(input("Enter your age: "))
    users[name] = age

for name, age in users.items():
    print(f"{name} is {age} years old.")
Enter fullscreen mode Exit fullscreen mode

Conclusion

Today, we:

  1. Wrapped up control structures.
  2. Explored the power of functions and learned to create reusable code.
  3. Leveraged modules for efficiency, including writing custom ones.
  4. Learned about Python's versatile data structures.

Practice these concepts thoroughly, as they form the backbone of Python programming. Tomorrow, we’ll delve into file handling and exception management to take your skills further. 🚀

Top comments (0)