Learn Python Coding
39.8K subscribers
673 photos
34 videos
24 files
459 links
Learn Python through simple, practical examples and real coding ideas. Clear explanations, useful snippets, and hands-on learning for anyone starting or improving their programming skills.

Admin: @HusseinSheikho || @Hussein_Sheikho
Download Telegram
💡 Replacing if-else with Match-Case

Starting with Python 3.10, we have a powerful tool: Structural Pattern Matching (match-case). This is not just an analog of switch-case from other languages; it's much more flexible. 🚀

Imagine you're writing a command handler for a bot. 🤖

How NOT to do it:

def handle_command(command):
if command == "start":
return "Hello! I'm a bot."
elif command == "help":
return "Here's a list of available commands..."
elif command == "stop":
return "Goodbye!"
else:
return "Unknown command."

How to do it properly:

def handle_command(command):
match command:
case "start":
return "Hello! I'm a bot."
case "help":
return "Here's a list of available commands..."
case "stop":
return "Goodbye!"
case _: # The underscore symbol catches everything else (default)
return "Unknown command."

The code looks like a clear table, and your eye doesn't get caught up in a bunch of elif statements. 🧐
You can pass data structures in the case statements and check their structure and content on the fly. 🔍
It's easy to combine cases. 🧩

#Python #Programming #MatchCase #CodingTips #Python310 #Developer

Join Best TG Channels https://t.iss.one/addlist/0f6vfFbEMdAwODBk

⭐️ Join Our WhatsApp Channel https://whatsapp.com/channel/0029VaC7Weq29753hpcggW2A
3
Python has a built-in topological dependency sorter!🚀

If you're working with tasks that have dependencies — for example, in build systems, CI/CD pipelines, or workflow orchestration — the order of execution often has to be determined manually.

Usually through graphs, DFS,, or custom execution order logic.

But Python's standard library already has graphlib.TopologicalSorter.

ts = TopologicalSorter()
ts.add("deploy", "test")
ts.add("test", "build")

After preparation, the sorter returns the correct execution order.

tuple(ts.static_order())

Result:

("build", "test", "deploy")

Especially useful for workflow management systems, dependency resolution, orchestration systems, and any tasks with a dependency graph.

🔥 TopologicalSorter allows you to solve dependency problems using Python's built-in tools without having to implement graph algorithms manually.

#Python #DependencyResolution #WorkflowOrchestration #CICD #BuildSystems #TopologicalSort

Join Best TG Channels https://t.iss.one/addlist/0f6vfFbEMdAwODBk

⭐️ Join Our WhatsApp Channel https://whatsapp.com/channel/0029VaC7Weq29753hpcggW2A
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍1
Unpacking the remaining elements 🧩

Sometimes you need to extract the first and last elements from a list, while grouping everything in the middle separately. Instead of struggling with slicing ([1:-1]), use the asterisk (*). ⭐️

data = ["CEO", "Middle Python Dev", "Junior Dev", "QA", "HR"]

# The asterisk automatically collects everything "extra" into a separate list.
boss, *team, hr = data

print(boss) # CEO
print(team) # ['Middle Python Dev', 'Junior Dev', 'QA']
print(hr) # HR

#Python #Coding #DataScience #DevLife #Programming #Tech

Join Best TG Channels https://t.iss.one/addlist/0f6vfFbEMdAwODBk

⭐️ Join Our WhatsApp Channel https://whatsapp.com/channel/0029VaC7Weq29753hpcggW2A
2
Cheat sheet on Python Frameworks:

Django: A full-featured web framework with built-in ORM, admin panel, and security features.

Flask: A lightweight microframework with a minimal set of features and high flexibility.

ORM & Admin: Built-in to Django, but need to be connected separately in Flask.

Security: Django has built-in security mechanisms, while in Flask, they need to be configured manually.

Testing: Django offers built-in testing tools, while Flask relies on third-party libraries.

Use Cases: Django is suitable for large and complex projects, while Flask is better for small applications, APIs, and prototypes.

#Python #WebDev #Django #Flask #Backend #Programming

Join Best TG Channels https://t.iss.one/addlist/0f6vfFbEMdAwODBk

⭐️ Join Our WhatsApp Channel https://whatsapp.com/channel/0029VaC7Weq29753hpcggW2A
7
🐱 Awesome Python Typing — Everything for Learning Typing in Python! 🐍

If you want to understand type annotations in Python, this repository is definitely worth saving. It contains the best articles, books, tools, libraries, and other materials dedicated to typing and its use in real-world projects. 💻📚

Here's the link: GitHub 📱
https://github.com/typeddjango/awesome-python-typing

https://github.com/typeddjango/awesome-python-typing

#Python #Typing #TypeAnnotations #Programming #Developer #GitHub

Join Best TG Channels https://t.iss.one/addlist/0f6vfFbEMdAwODBk
⭐️ Join Our WhatsApp Channel https://whatsapp.com/channel/0029VaC7Weq29753hpcggW2A
2
Forwarded from Udemy Free Coupons
Python Practice Tests: 210+ Questions Basics to Advanced

210+ Python questions: fundamentals, OOP, libraries & advanced concepts. Ace your interview & certification prep.…

🏷 Category: development
🌍 Language: English (US)
👥 Students: 6,036 students
⭐️ Rating: 4.5/5.0 (25 reviews)
🏃‍♂️ Enrollments Left: 65
Expires In: 0D:30H:30M
💰 Price: $9.59FREE
🆔 Coupon: MGM3Y2D100

⚠️ Watch 2 short ads to unlock your free access.

💎 By: https://t.iss.one/Udemy26
#Programming #Coding #Development #Tech #Python #DataScience
2
Python allows you to create enumerations that are also regular strings!

Previously, when working with APIs, JSON, and configurations, it was often necessary to manually extract the value from an Enum.

For example:
class Status(Enum):
ACTIVE = "active"

When serializing, you would get an enumeration object:
Status.ACTIVE

rather than a regular string:
"active"

In Python 3.11, StrEnum was introduced to solve this problem.
from enum import StrEnum

class Status(StrEnum):
ACTIVE = "active"
BLOCKED = "blocked"

Now, the value can be used wherever a string is expected:
json.dumps({"status": Status.ACTIVE})

The result:
{"status": "active"}

At the same time, the advantages of enumerations are preserved:
Status.ACTIVE
Status.BLOCKED

You cannot accidentally pass an incorrect value:
Status("unknown")

will result in an error.

🔥 StrEnum allows you to combine the strict typing of enumerations with the convenience of regular strings, without manual conversion when working with APIs, JSON, and configurations.

#Python #Coding #StrEnum #DevTips #Programming #Python311

Join Best TG Channels https://t.iss.one/addlist/0f6vfFbEMdAwODBk

⭐️ Join Our WhatsApp Channel https://whatsapp.com/channel/0029VaC7Weq29753hpcggW2A
3