Python Learning
5.84K subscribers
546 photos
2 videos
85 files
120 links
Python learning resources

Beginner to advanced Python guides, cheatsheets, books and projects.

For data science, backend and automation.
Join 👉 https://rebrand.ly/bigdatachannels

DMCA: @disclosure_bds
Contact: @mldatascientist
Download Telegram
🐍 Python For Loops (Iteration) 🔄

For loops are used to iterate over a sequence (like a list, tuple, string, or range) or other iterable objects. They let you execute a block of code repeatedly for each item.

👉 They are essential for automating tasks and processing collections of data efficiently.

🔹 1. What is a For Loop?

A for loop executes a set of statements, once for each item in a collection.

Example:
for character in "Python":
print(character)

Output:
P
y
t
h
o
n

🔹 2. Looping Through a List

This is one of the most common uses: going through each item in a list.

Syntax:
for item in list_name:
# code to execute for each item

Example:
fruits = ["apple", "banana", "cherry"]
for fruit in fruits:
print(f"I like {fruit}.")

Output:
I like apple.
I like banana.
I like cherry.

🔹 3. The range() Function

The range() function generates a sequence of numbers, often used to loop a specific number of times.

range(stop): Numbers from 0 up to (but not including) stop.
range(start, stop): Numbers from start up to (not including) stop.
range(start, stop, step): Numbers from start up to stop, increasing by step.

Example:
for i in range(3): # Loop 3 times (0, 1, 2)
print(f"Iteration {i}")

Output:
Iteration 0
Iteration 1
Iteration 2

🔹 4. break and continue Statements

break: Stops the loop completely, even if the iterable hasn't finished.
continue: Skips the rest of the current iteration and moves to the next.

Example (break):
for number in range(1, 6):
if number == 4:
break # Stop when number is 4
print(number)

Output:
1
2
3

Example (continue):
for item in ["A", "B", "C", "D"]:
if item == "C":
continue # Skip 'C'
print(item)

Output:
A
B
D

🎯 Today's Goal(What you should do)

✔️ Understand what for loops are
✔️ Iterate over lists, strings, and ranges (using your Python editor)
✔️ Use break and continue to control loop flow (using your Python editor)
6🔥2
🐍 Python If-Else Statements (Conditionals) 🤔

If-Else statements allow your program to make decisions and execute different code blocks based on conditions. They are fundamental for creating dynamic and responsive applications.

👉 Essential for controlling the flow of your program.

🔹 1. What are Conditional Statements?

They test a condition. If the condition is True, one block of code runs. If False, another block (or nothing) might run.

Example:
temperature = 25
if temperature > 20:
print("It's warm!")

Output: It's warm!

🔹 2. The if Statement

The simplest conditional, executing code only when a condition is True.

Syntax:
if condition:
# code to run if condition is True

Example:
age = 18
if age >= 18:
print("You are an adult.")

Output: You are an adult.

🔹 3. The else Statement

Executes a block of code when the if condition is False.

Syntax:
if condition:
# code if True
else:
# code if False

Example:
score = 75
if score >= 90:
print("Excellent!")
else:
print("Good effort!")

Output: Good effort!

🔹 4. The elif (Else If) Statement

Allows you to check multiple conditions sequentially. If the first if is False, it checks elif, and so on.

Syntax:
if condition1:
# code if condition1 is True
elif condition2:
# code if condition2 is True
else:
# code if all conditions are False

Example:
time = 14
if time < 12:
print("Good morning!")
elif time < 18:
print("Good afternoon!")
else:
print("Good evening!")

Output: Good afternoon!

🔹 5. Short Hand If / Ternary Operator

A concise way to write simple if-else statements on a single line.

Example:

a = 10
b = 5
print("A is greater") if a > b else print("B is greater")

Output: A is greater

🎯 Today's Goal(What you should do)

✔️ Understand how to use if, elif, and else
✔️ Make your programs respond to different inputs
✔️ Use shorthand for simple conditions

👉 Conditional statements are the backbone of any interactive and logical Python program. It's crucial you understand them well.
4
Forwarded from Programming Quiz Channel
Which Python keyword allows defining anonymous functions?
Anonymous Quiz
24%
func
66%
lambda
7%
inline
3%
quick
4
Automating WhatsApp with Python
8
Forwarded from Programming Quiz Channel
What is the output in Python?
0.1 + 0.2 == 0.3
Anonymous Quiz
61%
True
30%
False
6%
Error
3%
Depends
🐍 Python Dictionaries (Key-Value Pairs) 🔑

Dictionaries are unordered collections of data that store items in key-value pairs. They are incredibly powerful for organizing and quickly accessing related information.

👉 Ideal for representing real-world objects with unique identifiers (keys).

🔹 1. What is a Dictionary?

A mutable, unordered collection where each item has a unique key and an associated value. Defined by curly braces {}.

Example:
person = {"name": "Alice", "age": 30, "city": "New York"}
print(person)

Output: {'name': 'Alice', 'age': 30, 'city': 'New York'}

🔹 2. Accessing Dictionary Items

Access values using their associated key inside square brackets [] or with the .get() method.

Example:
student = {"id": 101, "name": "Bob", "grade": "A"}
print(student["name"])
print(student.get("grade"))

Output:
Bob
A

🔹 3. Adding and Modifying Items

To add a new item, assign a value to a new key. To modify, assign a new value to an existing key.

Example:
car = {"brand": "Ford", "model": "Mustang"}
car["year"] = 2020 # Add new item
car["model"] = "Explorer" # Modify existing item
print(car)

Output: {'brand': 'Ford', 'model': 'Explorer', 'year': 2020}

🔹 4. Removing Items

del dict[key]: Removes the item with the specified key.
.pop(key): Removes (and returns) the item with the specified key.
.clear(): Empties the entire dictionary.

Example:
settings = {"theme": "dark", "sound": "on", "notifications": "off"}
del settings["sound"] # Remove by key
print(settings)
settings.pop("theme") # Also removes by key
print(settings)

Output:
{'theme': 'dark', 'notifications': 'off'}
{'notifications': 'off'}

🔹 5. Looping Through a Dictionary

You can loop through keys, values, or both (items).

Example:
for k, v in person.items(): # Loops through key-value pairs
print(f"{k}: {v}")

Output:
name: Alice
age: 30
city: New York

🎯 Today's Goal(What you should do)

✔️ Understand how dictionaries store data in key-value pairs
✔️ Add, access, modify, and remove dictionary items
✔️ Iterate over keys, values, or items
5
🐍 Python Strings (Text Manipulation) 🔤

Strings are sequences of characters, used for handling text data. They are immutable, meaning once created, they cannot be changed directly. Python provides many built-in methods for working with strings.

👉 Essential for almost any program that interacts with text, from usernames to file paths.

🔹 1. What is a String?

A string is a sequence of characters, enclosed in single quotes '', double quotes "", or triple quotes """ """ for multi-line strings.

Example:
name = "Pythonista"
message = 'Hello, world!'
multiline = """This is
a multi-line
string."""
print(name)

Output: Pythonista

🔹 2. Accessing Characters (Indexing & Slicing)

Indexing: Get a single character using its position (index starts at 0).
Slicing: Get a sub-sequence of characters (a "slice") using [start:end]. The end index is exclusive.

Example:
word = "developer"
print(word[0]) # First character
print(word[3:7]) # Characters from index 3 up to (but not including) 7
print(word[-1]) # Last character

Output:
d
elop
r

🔹 3. String Concatenation & Length

Concatenation: Joining strings using the + operator.
len() function: Returns the number of characters in a string.

Example:
first = "Hello"
last = "World"
full_message = first + " " + last + "!"
print(full_message)
print(len(full_message))

Output:
Hello World!
12

🔹 4. Common String Methods

.upper() / .lower(): Convert to uppercase/lowercase.
.strip(): Removes leading/trailing whitespace.
.replace(old, new): Replaces occurrences of a substring.
.split(delimiter): Splits the string into a list of substrings.

Example:
text = "   Hello Python!   "
print(text.strip())
print("apple,banana,cherry".split(','))
print("Python".replace('o', '0'))

Output:
Hello Python!
['apple', 'banana', 'cherry']
Pyth0n

🔹 5. F-strings (Formatted String Literals)

A powerful and easy way to embed expressions inside string literals. Prefix the string with f or F.

Example:
item = "book"
price = 19.99
print(f"The {item} costs ${price:.2f}.") # .2f for 2 decimal places

Output: The book costs $19.99.

🎯 Today's Goal(What you should do)

✔️ Understand string immutability
✔️ Access characters and slice strings
✔️ Use common string methods for manipulation
✔️ Format strings with f-strings
7
60 Python Project Ideas (Beginner + Intermediate + Advanced)
3👍1
🐍 Python Classes & Objects (OOP Basics) 🏗

Object-Oriented Programming (OOP) is a powerful paradigm where you design your applications using classes and objects. Classes serve as blueprints, and objects are instances of those blueprints.

👉 Essential for building structured, reusable, and scalable code in larger projects.

🔹 1. What is OOP?

OOP organizes code around objects rather than just functions and data. It focuses on concepts like encapsulation, inheritance, and polymorphism to make complex systems easier to manage.

🔹 2. Class vs. Object

Class: A blueprint or a template for creating objects. It defines the properties (attributes) and behaviors (methods) that all objects of that type will have.
Object: An instance of a class. It's a real-world entity created from the class blueprint.

Example: Class = Car, Object = "My blue Honda Civic"

🔹 3. Defining a Class

We use the class keyword to define a new class. Class names typically start with an uppercase letter.

Syntax:
class ClassName:
# attributes (variables)
# methods (functions)

Example:
class Dog:
species = "Canis familiaris" # Class attribute

def __init__(self, name, age): # Constructor method
self.name = name # Instance attribute
self.age = age # Instance attribute

🔹 4. Creating an Object (Instantiating a Class)

To create an object from a class, you call the class name as if it were a function. This process is called instantiation.

Example:
my_dog = Dog("Buddy", 3) # Creating an object 'my_dog'
your_dog = Dog("Lucy", 5) # Creating another object 'your_dog'

🔹 5. Object Attributes & Methods

Attributes: Variables that belong to an object (e.g., name, age). Accessed using dot notation: object.attribute.
Methods: Functions that belong to an object (e.g., bark()). Defined inside the class and always take self as their first parameter.

Example:
class Dog:
def __init__(self, name):
self.name = name

def bark(self): # A method
print(f"{self.name} says Woof!")

my_dog = Dog("Rex")
print(my_dog.name) # Access attribute
my_dog.bark() # Call method

Output:
Rex
Rex says Woof!

🎯 Today's Goal(What you should do)

✔️ Understand the concept of classes as blueprints and objects as instances
✔️ Define a simple class with attributes and methods
✔️ Create objects from a class
4
📚 The Algorithms: Python

This is the largest open-source collection of algorithms implemented exclusively in Python. It provides clean, well-documented, educational implementations of every major algorithm, from sorting to machine learning, actively maintained by a global community of 1,200+ contributors. No prerequisites required.

Key highlights:

🐍 Python-only focus - perfect for Python learners and developers
📈 219k stars, 50k forks - trusted by millions worldwide
🧠 Covers 50+ algorithmic domains: backtracking, dynamic programming, graphs, machine learning, neural networks, computer vision, cryptography, and more
🔄 Actively updated - last commit March 28, 2026
🎓 Educational purpose - implementations are clear and intended for learning, not just production

🔗 Link

@python_bds
4👏2
🐍 Python Modules & Packages (Code Organization) 📂

Modules and packages help organize your Python code into reusable files and directories. They make your projects manageable, prevent name conflicts, and allow you to share code.

🔹 1. What are Modules?

A module is simply a Python file (.py extension) containing Python code (functions, classes, variables).

Example:
If you have my_math.py:
# my_math.py
def add(a, b):
return a + b


🔹 2. Importing Modules

You use the import statement to bring functionality from one module into another.

Syntax:
import module_name
from module_name import specific_item
from module_name import * # Avoid this in large projects
import module_name as alias
Example:python
import my_math
print(my_math.add(5, 3)) # Access function using module_name.function

from my_math import add
print(add(10, 2)) # Access function directly

import math as m # Using an alias for built-in 'math' module
print(m.sqrt(16))

Output:
8
12
4.0

🔹 3. What are Packages?

A package is a way to organize related modules into a directory hierarchy. A directory becomes a Python package if it contains an __init__.py file (even if empty).

Example:
my_project/
├── main.py
└── my_package/
├── __init__.py
├── graphics.py
└── sound.py


🔹 4. Importing from Packages

You import modules or specific items from modules within a package using dot notation.

Example (assuming my_package above):
# In main.py
from my_package import graphics
# Now you can use functions/classes from graphics.py like: graphics.draw_circle()

from my_package.sound import play_effect
# Now you can use play_effect() directly


🔹 5. Benefits of Modules & Packages

Reusability: Write code once, use everywhere.
Organization: Keeps related code together.
Readability: Easier to understand structured code.
Namespace management: Prevents variable/function name clashes.

🎯 Today's Goal (What you should do)

✔️ Understand what modules and packages are
✔️ Learn how to import functionality
✔️ Appreciate the benefits of code organization
4
Python Dictionaries
3🔥3
🐍 Python File I/O (Reading & Writing Files) 📝

File Input/Output (I/O) allows your Python programs to interact with external files, reading data from them or writing data to them. This is crucial for persistence, logging, and data processing.

🔹 1. Opening Files (open())

The open() function is used to open a file. It returns a file object.

Syntax:
file_object = open("filename.txt", "mode")

Common modes:
"r": Read (default) - file must exist.
"w": Write - creates a new file or overwrites an existing one.
"a": Append - creates a new file or adds to the end of an existing one.
"x": Exclusive creation - creates a new file, fails if it exists.

🔹 2. Reading from Files

Once opened in read mode, you can read content:
.read(): Reads the entire file content as a single string.
.readline(): Reads one line at a time.
.readlines(): Reads all lines into a list of strings.

Example:
# Assuming 'data.txt' contains "Line 1\nLine 2\n"
file = open("data.txt", "r")
content = file.read()
print(content)
file.close() # Always close the file!

Output:
Line 1
Line 2

🔹 3. Writing to Files

Once opened in write ("w") or append ("a") mode, you can write content:
.write(string): Writes a string to the file. Remember to add \n for new lines.

Example:
file = open("output.txt", "w")
file.write("Hello from Python!\n")
file.write("This is a new line.")
file.close()

(Creates/overwrites output.txt with the text.)

🔹 4. The with Statement (Best Practice!)

The with statement ensures files are automatically closed even if errors occur. This is the recommended way.

Syntax:
with open("filename.txt", "mode") as file_object:
# perform file operations here
# File is automatically closed after this block
Example:python
with open("names.txt", "w") as f:
f.write("Alice\nBob\n")

with open("names.txt", "r") as f:
for line in f:
print(line.strip()) # .strip() removes newline characters

Output:
Alice
Bob

🔹 5. File Modes (Binary vs. Text)

• Text mode (default): "r", "w", "a" - handles text encoding/decoding.
• Binary mode: "rb", "wb", "ab" - handles raw bytes, useful for images, executables, etc.

Example (Binary Write):
with open("data.bin", "wb") as f:
f.write(b'\x01\x02\x03') # Writing bytes


🎯 Today's Goal

✔️ Understand how to open files in different modes
✔️ Read and write data to files
✔️ Master the with statement for safe file handling
4👏1
Forwarded from Programming Quiz Channel
Which Python concept allows efficient iteration over large datasets?
Anonymous Quiz
18%
List
26%
Tuple
34%
Dictionary
21%
Generator
How to Setup Python the Right Way
4
🐍 Python Lambda Functions (Anonymous Functions) 👻

Lambda functions are small, anonymous (unnamed) functions defined with the lambda keyword. They can take any number of arguments but can only have one expression.

🔹 1. What is a Lambda Function?

A compact way to write simple functions without def. They are essentially a shortcut for defining simple, inline functions.

Syntax:
lambda arguments: expression
Example:python
add_ten = lambda x: x + 10
print(add_ten(5))

Output: 15

🔹 2. Why Use Lambda?

Conciseness: Shorter syntax for simple operations.
Anonymity: No need to name a function that will only be used once.
Readability: Can make code cleaner when used appropriately in specific contexts.

🔹 3. Lambda with Multiple Arguments

Lambdas can take multiple arguments, just like regular functions.

Example:
multiply = lambda a, b: a × b
print(multiply(4, 7))

Output: 28

🔹 4. Common Use Case 1: filter()

The filter() function constructs an iterator from elements of an iterable for which a function returns True. Lambdas are often used as this function.

Example:
numbers = [1, 2, 3, 4, 5, 6]
evens = list(filter(lambda x: x % 2 == 0, numbers))
print(evens)

Output: [2, 4, 6]

🔹 5. Common Use Case 2: map()

The map() function applies a given function to each item of an iterable and returns an iterator of the results.

Example:
numbers = [1, 2, 3]
squared_numbers = list(map(lambda x: x × x, numbers))
print(squared_numbers)

Output: [1, 4, 9]

🔹 6. Common Use Case 3: sorted() (Custom Sort Key)

Lambdas are frequently used with sorted() as the key argument to define custom sorting logic.

Example:
students = [('Alice', 25), ('Bob', 20), ('Charlie', 30)]
# Sort by age (the second element of each tuple)
sorted_students = sorted(students, key=lambda student: student[1])
print(sorted_students)

Output: [('Bob', 20), ('Alice', 25), ('Charlie', 30)]

🎯 Today's Goal

✔️ Understand what lambda functions are
✔️ Write short, single-expression functions
✔️ Use lambdas effectively with filter(), map(), and sorted()
4
Python Web Scraping
3👍1