Introduction to Python: Comprehensive Notes
- Introduction to Python
- Invented By: Python was created by Guido van Rossum.
- Year: Python was first released in 1991.
- Usage: Python is widely used in web development, data science, artificial intelligence, automation, and more.
- Why Python?
- Readability: Simple and clean syntax.
- Community Support: Extensive libraries and frameworks.
- Versatility: Used in various domains like web development, data science, etc.
- Python Syntax
- Indentation: Python uses indentation (spaces or tabs) to define blocks of code.
- Example:
if True:
print(“This is indented”)
- Comments:
Single-line:Use # for single-line comments.
Multi-line: Use triple quotes (”’ or “””) for multi-line comments.
- Example:
# This is a single-line comment
“””
This is a
multi-line comment
“””
- Data Types
- Numeric Types: int, float, complex
- Sequence Types: str, list, tuple
- Mapping Type: dict
- Set Types: set, frozenset
- Boolean Type: bool
- None Type: NoneType
- Example:
a = 10 # int
b = 3.14 # float
c = ‘Hello’ # str
d = True # bool
- Variables
- Declaration: Variables are created when you assign a value to them.
- Dynamic Typing: Python variables do not require an explicit declaration of type.
- Example:
x = 5 # Integer
y = “Hello” # String
z = 3.14 # Float
- Operators
- Arithmetic Operators: +, -, *, /, //, %, **
- Comparison Operators: ==, !=, >, <, >=, <=
- Logical Operators: and, or, not
- Membership Operators: in, not in
- Identity Operators: is, is not
- Example:
a = 10
b = 20
print(a == b) # False
print(a is b) # False
- Control Flow and Looping Statements
- Conditional Statements:
- if, elif, else
- Example:
x = 10
if x > 0:
print(“Positive”)
elif x == 0:
print(“Zero”)
else:
print(“Negative”)
- Looping Statements:
- For Loop:
for i in range(5):
print(i)
- While Loop:
i = 0
while i < 5:
print(i)
i += 1
- Loop Control: break, continue, pass
- Functions
- Introduction: Functions allow for code reuse and modularity.
- Syntax:
def function_name(parameters):
“””Docstring”””
statement(s)
Example:
def greet(name):
return f”Hello, {name}!”
print(greet(“Alice”))
- Arguments: Positional, keyword, default values.
- Return Statement: Used to return values from a function
- Modules and Packages
- Modules: A Python file containing definitions and statements.
- Importing Modules:
import math
print(math.sqrt(16))
- Packages: A collection of modules in directories that include a special __init__.py file.
- Creating a Module: Any .py file can be used as a module.
- Example:
from math import pi
print(pi)
- File Handling
- Reading and Writing Files:
- Open a file: open(filename, mode)
- Modes: r (read), w (write), a (append), b (binary mode)
- Example:
with open(‘file.txt’, ‘r’) as file:
content = file.read()
print(content)
- Writing to a File:
with open(‘file.txt’, ‘w’) as file:
file.write(“Hello, World!”)
- Error Handling
- Try-Except Block:
try:
# Code that may throw an error
x = 1 / 0
except ZeroDivisionError:
print(“You cannot divide by zero!”)
finally:
print(“This runs no matter what.”)
- Multiple Exceptions: Handle multiple exceptions using tuples.
- Object-Oriented Programming (OOP)
- Class and Objects:
- Class Definition:
class MyClass:
def __init__(self, name):
self.name = name
def greet(self):
return f”Hello, {self.name}”
- Object Creation:
obj = MyClass(“Alice”)
print(obj.greet())
- Inheritance:Allows one class to inherit attributes and methods from another.
class Animal:
def sound(self):
return “Some sound”
class Dog(Animal):
def sound(self):
return “Bark”
dog = Dog()
print(dog.sound()) # Output: Bark
- Polymorphism: Same method name, different implementations.
- List Comprehensions
- Syntax: [expression for item in iterable if condition]
- Example:
squares = [x**2 for x in range(10)]
print(squares)
- Output: [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
- Lambda Functions
- Anonymous Functions: Created using the lambda keyword.
- Syntax: lambda arguments: expression
- Example:
add = lambda x, y: x + y
print(add(2, 3)) # Output: 5
- Map, Filter, and Reduce
- Map: Applies a function to all items in an iterable.
nums = [1, 2, 3, 4]
squares = list(map(lambda x: x**2, nums))
print(squares) # Output: [1, 4, 9, 16]
- Filter: Filters items based on a condition.
nums = [1, 2, 3, 4]
evens = list(filter(lambda x: x % 2 == 0, nums))
print(evens) # Output: [2, 4]
- Reduce: Reduces a sequence to a single value.
from functools import reduce
nums = [1, 2, 3, 4]
product = reduce(lambda x, y: x * y, nums)
print(product) # Output: 24
- Common Built-in Functions
- Examples: len(), sum(), max(), min(), sorted(), type(), range()
- Example Usage:
numbers = [1, 2, 3, 4]
print(len(numbers)) # Output: 4
print(sum(numbers)) # Output: 10
- Debugging
- Simple Debugging: Use print() statements to track variables.
- Python Debugger (pdb):
import pdb
pdb.set_trace()
- Setting Breakpoints: Can be used to pause execution and inspect code.
This comprehensive document covers the fundamental concepts of Python and provides clear examples for each topic.
1 Comment
April 27, 2023
The design is simple and elegant. The customer support on this product is also amazing. I would highly recommend you to purchase templates from the Marketify team! Thank you for the wonderful project.