Introduction to Python
Python is a high-level, interpreted programming language known for its readability and simplicity. It is widely used in web development, data analysis, artificial intelligence, scientific computing, automation, and more.
- Creator: Guido van Rossum
- First Released: 1991
- Key Features:
- Easy to Read and Write: Python's syntax is designed to be intuitive and mirrors human language, making it an ideal language for beginners.
- Interpreted Language: Python code is executed line by line, making it easier to debug and develop.
- Dynamically Typed: No need to declare data types for variables explicitly.
- Extensive Libraries: Python has a rich set of libraries and frameworks for various tasks.
- Cross-Platform: Python can run on various operating systems like Windows, macOS, and Linux.
Basic Python Syntax
1. Hello World Program:
pythonprint("Hello, World!")
2. Variables and Data Types:
- Variables: Containers for storing data values.python
x = 10 # Integer y = 3.14 # Float name = "John" # String is_active = True # Boolean
- Data Types:
- int: Integer numbers (e.g.,
10
,-5
) - float: Floating-point numbers (e.g.,
3.14
,-0.01
) - str: Strings (e.g.,
"Hello"
,"Python"
) - bool: Boolean values (
True
,False
) - list: Ordered, mutable collections of items (e.g.,
[1, 2, 3]
) - tuple: Ordered, immutable collections of items (e.g.,
(1, 2, 3)
) - dict: Key-value pairs (e.g.,
{"name": "John", "age": 30}
) - set: Unordered, unique collections of items (e.g.,
{1, 2, 3}
)
- int: Integer numbers (e.g.,
3. Control Structures:
- If-Else Statement:python
age = 18 if age >= 18: print("You are an adult.") else: print("You are a minor.")
- For Loop:python
for i in range(5): print(i)
- While Loop:python
count = 0 while count < 5: print(count) count += 1
4. Functions:
- Function Definition:python
def greet(name): return "Hello, " + name
- Function Call:python
message = greet("John") print(message)
5. Lists and List Comprehension:
- List Operations:python
fruits = ["apple", "banana", "cherry"] fruits.append("orange") # Add an item fruits.remove("banana") # Remove an item print(fruits[1]) # Access an item by index
- List Comprehension:python
squares = [x**2 for x in range(10)] print(squares)
6. Dictionaries:
- Dictionary Operations:python
student = {"name": "John", "age": 20, "grade": "A"} student["age"] = 21 # Update a value print(student["name"]) # Access a value by key
7. Exception Handling:
- Try-Except Block:python
try: result = 10 / 0 except ZeroDivisionError: print("Cannot divide by zero!") finally: print("This block is always executed.")
8. File Handling:
- Read from a File:python
with open("file.txt", "r") as file: content = file.read() print(content)
- Write to a File:python
with open("file.txt", "w") as file: file.write("Hello, World!")
9. Classes and Objects:
- Class Definition:python
class Dog: def __init__(self, name, age): self.name = name self.age = age def bark(self): return "Woof!" # Object Creation my_dog = Dog("Buddy", 3) print(my_dog.name) print(my_dog.bark())
10. Modules and Packages:
- Importing a Module:python
import math print(math.sqrt(16))
- Creating a Module:
- Save the following as
my_module.py
:pythondef add(a, b): return a + b
- Import and use the module:python
from my_module import add result = add(5, 3) print(result)
- Save the following as
Python Interview Questions & Answers
Q1. What is Python? List some features of Python. Answer: Python is a high-level, interpreted programming language known for its simplicity and readability. Key features include:
- Easy to read and write.
- Interpreted language.
- Dynamically typed.
- Extensive libraries and frameworks.
- Cross-platform compatibility.
Q2. What are Python's built-in data types? Answer: Python's built-in data types include:
int
: Integer numbers.float
: Floating-point numbers.str
: Strings.bool
: Boolean values.list
: Ordered, mutable collections.tuple
: Ordered, immutable collections.dict
: Key-value pairs.set
: Unordered collections of unique items.
Q3. Explain the difference between list
and tuple
.
Answer:
List
: A mutable, ordered collection of items. Elements can be added, removed, or changed. Defined with square brackets, e.g.,[1, 2, 3]
.Tuple
: An immutable, ordered collection of items. Once created, elements cannot be changed. Defined with parentheses, e.g.,(1, 2, 3)
.
Q4. What are functions in Python, and why are they used? Answer: Functions are reusable blocks of code that perform a specific task. They are used to:
- Break down complex problems into simpler pieces.
- Improve code reusability.
- Enhance code organization and readability.
Q5. What is a lambda function? Provide an example. Answer: A lambda function is an anonymous, single-expression function in Python. It's often used for short, simple functions. Example:
pythonadd = lambda a, b: a + b
print(add(2, 3)) # Output: 5
Q6. Explain the concept of inheritance in Python. Answer: Inheritance allows one class (child class) to inherit attributes and methods from another class (parent class). This promotes code reusability and establishes a relationship between classes. Example:
pythonclass Animal:
def speak(self):
return "Animal sound"
class Dog(Animal):
def speak(self):
return "Woof!"
dog = Dog()
print(dog.speak()) # Output: Woof!
Q7. What is the difference between ==
and is
in Python?
Answer:
==
: Compares the values of two objects and returnsTrue
if they are equal.is
: Compares the memory locations of two objects and returnsTrue
if they refer to the same object.
Q8. How does exception handling work in Python?
Answer:
Exception handling in Python is done using try
, except
, else
, and finally
blocks:
- try: Code that might raise an exception.
- except: Code that runs if an exception occurs.
- else: Code that runs if no exception occurs.
- finally: Code that runs regardless of whether an exception occurs or not.
Q9. What is the purpose of the self
parameter in Python classes?
Answer:
The self
parameter refers to the instance of the class. It is used to access attributes and methods of the class in Python. It is the first parameter of any method in the class and is automatically passed when a method is called on an object.
Q10. What are Python decorators, and how are they used? Answer: Decorators are functions that modify the behavior of another function or method. They are often used to add functionality to existing functions in a clean, readable, and reusable way. Example:
pythondef my_decorator(func):
def wrapper():
print("Something is happening before the function is called.")
func()
print("Something is happening after the function is called.")
return wrapper
@my_decorator
def say_hello():
print("Hello!")
say_hello()
Output:
vbnetSomething is happening before the function is called.
Hello!
Something is happening after the function is called.