Python Programming: Functions, Packages, and OOP Concepts
Python Functions
1. Definition: Functions are defined using the def
keyword.
2. Parameters: Accept inputs (arguments) to customize behavior.
3. Return Values: Functions can return outputs using the return
statement.
4. Call: A function is executed when it’s called.
Python Packages
In Python, a package is a way to organize related modules (Python files) into a directory structure, making it easier to manage and reuse code. It allows for a hierarchical organization of the codebase.
Key Features of a Package
1. Directory Structure: A package is essentially a directory containing an __init__.py
file and other Python modules.
2. __init__.py File: This file makes the directory a package. It can be empty or contain initialization code for the package.
3. Subpackages: A package can contain other packages, forming a hierarchy.
Importing Modules in Python
In Python, import
is used to include modules or specific components into your code.
Examples:
1. Importing a module:
import math
print(math.sqrt(16))
# Output: 4.0
2. Importing specific items:
from math import sqrt
print(sqrt(25))
# Output: 5.0
3. Using aliases:
import numpy as np
print(np.array([1, 2, 3]))
Custom or third-party modules can also be imported to reuse functionality.
Common Python Questions
1. What is the difference between a list and a tuple?
A list is mutable (can be changed), while a tuple is immutable (cannot be changed).
2. What does the len()
function do in Python?
The len()
function returns the number of items in an object like a list, string, or tuple.
Example: len("hello")
gives 5.
3. What is the purpose of the def
keyword?
The def
keyword is used to define a function in Python.
Example:
def greet():
return "Hello"
4. What is the difference between is
and ==
in Python?
is
checks object identity, while ==
checks value equality.
5. What does pass
do in Python?
The pass
statement is a placeholder that does nothing.
Example:
if True:
pass
Examples of Common 5-Mark Questions in Python
1. Explain the concept of Python functions with an example.
A function is a block of reusable code that performs a specific task. It is defined using the def
keyword.
Example:
def add_numbers(a, b):
return a + b
print(add_numbers(3, 5))
# Output: 8
2. Differentiate between Python lists and dictionaries.
List: An ordered collection of items, accessed by index.
Example: my_list = [1, 2, 3]
Dictionary: A collection of key-value pairs, accessed by keys.
Example: my_dict = {'name': 'Alice', 'age': 25}
3. Explain the use of loops in Python with examples.
For Loop: Used to iterate over a sequence.
Example:
for i in range(3):
print(i)
# Output: 0, 1, 2
While Loop: Repeats as long as a condition is true.
Example:
i = 0
while i < 3:
print(i)
# Output: 0, 1, 2
i += 1
4. What are Python modules? How do you import and use them?
A module is a file containing Python code (functions, classes, variables) that can be reused in other programs. Use the import
statement to include it.
Example:
import math
print(math.sqrt(16))
# Output: 4.0
5. Explain exception handling in Python with an example.
Exception handling is done using try
, except
, else
, and finally
blocks to manage runtime errors.
Example:
try:
num = int(input("Enter a number: "))
print(10 / num)
except ZeroDivisionError:
print("Cannot divide by zero.")
except ValueError:
print("Invalid input.")
Examples of 10-Mark Questions in Python
1. Explain Object-Oriented Programming (OOP) in Python with examples.
OOP is a programming paradigm based on the concept of objects, which contain data (attributes) and methods (functions). Python supports OOP with features like classes and inheritance.
Key Concepts:
- Class: Blueprint for objects.
- Object: Instance of a class.
- Inheritance: Reusing code from a parent class.
- Encapsulation: Restricting access to data.
Example:
class Animal:
def __init__(self, name):
self.name = name
def speak(self):
return "I am an animal"
class Dog(Animal):
# Inheritance
def speak(self):
return f"{self.name} says Woof!"
dog = Dog("Buddy")
print(dog.speak())
# Output: Buddy says Woof!
2. Describe Python’s file handling with examples.
Python provides built-in functions to handle files using the open()
function with modes like r
(read), w
(write), a
(append), etc.
Example:
# Writing to a file
with open("example.txt", "w") as file:
file.write("Hello, Python!")
# Reading from a file
with open("example.txt", "r") as file:
content = file.read()
print(content)
# Output: Hello, Python!
3. Explain Python decorators with examples.
Decorators are functions that modify the behavior of other functions or methods.
Example:
def decorator(func):
def wrapper():
print("Before the function call")
func()
print("After the function call")
return wrapper
@decorator
# Applying the decorator
def say_hello():
print("Hello!")
say_hello()
# Output:
# Before the function call
# Hello!
# After the function call
4. Explain Python’s exception handling mechanism with examples.
Python uses try
, except
, else
, and finally
to handle exceptions, ensuring that the program doesn’t crash due to runtime errors.
Example:
try:
num = int(input("Enter a number: "))
print(10 / num)
except ZeroDivisionError:
print("Cannot divide by zero.")
except ValueError:
print("Invalid input. Enter a number.")
else:
print("No errors!")
finally:
print("Execution complete.")
5. Describe Python’s data structures (list, tuple, set, dictionary) with examples.
List: Ordered, mutable collection.
my_list = [1, 2, 3]
my_list.append(4)
print(my_list)
# Output: [1, 2, 3, 4]
Tuple: Ordered, immutable collection.
my_tuple = (1, 2, 3)
print(my_tuple[1])
# Output: 2
Set: Unordered, mutable, unique elements.
my_set = {1, 2, 2, 3}
print(my_set)
# Output: {1, 2, 3}
Dictionary: Unordered collection of key-value pairs.
my_dict = {"name": "Alice", "age": 25}
print(my_dict["name"])
# Output: Alice