Learn Python Coding
40.7K subscribers
708 photos
37 videos
24 files
512 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
Do not violate the Single Responsibility Principle 🎯

A function should do one thing, and do it well.

This function does too much:

def calculate_final_total(
price: float,
quantity: int,
discount_rate: float,
tax_rate: float
) -> float:
# Calculate the subtotal
subtotal = price * quantity

# Apply the discount
discounted_amount = subtotal * (1 - discount_rate)

# Calculate the tax
final_total = discounted_amount * (1 + tax_rate)

return final_total


The problem here is that the calculation of the subtotal, discount, and tax are all combined into one function. Any change to one of these steps can affect the entire calculation.

It's better to break down the logic into smaller, more specialized functions:

def calculate_subtotal(price: float, quantity: int) -> float:
return price * quantity

def apply_discount(subtotal: float, discount: float) -> float:
return subtotal * (1 - discount)

def calculate_tax(amount: float, tax_rate: float) -> float:
return amount * (1 + tax_rate)


This is much better. βœ…

Smaller functions with a single task are easier to test with unit tests because they have fewer dependencies and require less mocking.

Furthermore, isolated components are easier to reuse in different parts of the application or pipeline without bringing in unnecessary dependencies.

Therefore, keep your functions simple and focused.

One function – one responsibility. πŸ“

#Python #Coding #SoftwareDevelopment #CleanCode #Programming #BestPractices

✨ Join Best TG Channels https://t.me/addlist/0f6vfFbEMdAwODBk

⭐️ Join Our WhatsApp Channel https://whatsapp.com/channel/0029VaC7Weq29753hpcggW2A
❀6
🌍 From Python Practice to Real Projects

Learning Python is one thing. Using it to build something practical is another.

Once you move beyond simple exercises and start working on automation, web data collection, testing, or location-based projects, you may need more than just Python code β€” you may also need reliable IP access.

711Proxy provides 100M+ real residential IPs across 200+ countries & regions, giving you flexible options for projects that need different locations or frequent IP changes.

⚑️ What you can use it for:
Β· Web data collection and research
Β· Python automation projects
Β· Testing location-based results
Β· Projects that require IP rotation
Β· Working with different network locations

With rotating and sticky sessions, country & ASN targeting, and HTTP/SOCKS5 support, you can integrate residential proxies into different Python workflows.

🎁 Get 1GB Residential Proxy Traffic Free:https://www.711proxy.com
πŸ‘‰After registration, contact the 711Proxy support team and mention β€œ711TRIAL” to claim your free 1GB.
❀8πŸ‘2
The tell() function in Python 🐍

The tell() function returns the current position of the file pointer within the data stream. It is most often used when working with files. πŸ“‚

The function does not accept any arguments and returns an integer – the position in bytes from the beginning of the stream. πŸ”’

with open("file.txt", "rb") as f:
print(f.tell())

#Python #Programming #Coding #FileHandling #DevTips #Tech

✨ Join Best TG Channels https://t.me/addlist/0f6vfFbEMdAwODBk

⭐️ Join Our WhatsApp Channel https://whatsapp.com/channel/0029VaC7Weq29753hpcggW2A
❀3
πŸ“Œ Marking Deprecated Code in Python: deprecated()

In large projects, old functions are not always immediately removed. They are often left for compatibility, but it's important to warn developers that they should no longer be used.

Previously,
warnings.warn()
was often used for this purpose:

import warnings

def old_api():
warnings.warn(
"Use new_api()",
DeprecationWarning
)

In Python 3.13, a
deprecated()
decorator has been introduced:

from warnings import deprecated

@deprecated("Use new_api()")
def old_api():
return "old"

Now, the information about deprecation is part of the API itself. It can be recognized not only during runtime, but also by editors and static analysis tools.

This also works for classes:

@deprecated("Use NewClient")
class OldClient:
pass

This is convenient for libraries, SDKs, and large projects where the API is gradually changing.

#Python #Python313 #Deprecated #Coding #Programming #SoftwareDevelopment

✨ Join Best TG Channels https://t.me/addlist/0f6vfFbEMdAwODBk

⭐️ Join Our WhatsApp Channel https://whatsapp.com/channel/0029VaC7Weq29753hpcggW2A
❀2
This channels is for Programmers, Coders, Software Engineers.

0️⃣ Python
1️⃣ Data Science
2️⃣ Machine Learning
3️⃣ Data Visualization
4️⃣ Artificial Intelligence
5️⃣ Data Analysis
6️⃣ Statistics
7️⃣ Deep Learning
8️⃣ programming Languages

βœ… https://t.me/addlist/8_rRW2scgfRhOTc0

βœ… https://t.me/Codeprogrammer
Please open Telegram to view this post
VIEW IN TELEGRAM
❀4
πŸ‘©β€πŸ’» heapq.merge(): Combining sorted data!

If you have multiple sources of data that are already sorted, you don't need to collect them into a single collection and sort them again. heapq.merge() combines such sources into a single, ordered iterator.

In this guide:
β€’ We will combine multiple sorted sequences;
β€’ We will explore lazy processing of large data sources;
β€’ We will configure comparison using the key argument;
β€’ We will combine data sorted in reverse order.

This is especially useful when working with logs, files, and query results, where each source already provides data in the correct order.

#Python #heapq #DataProcessing #CodingTips #Programming #Algorithms

✨ Join Best TG Channels https://t.me/addlist/0f6vfFbEMdAwODBk

⭐️ Join Our WhatsApp Channel https://whatsapp.com/channel/0029VaC7Weq29753hpcggW2A
❀1
Using pickletools.dis() to analyze serialized data.

🐍 pickle doesn't just store a snapshot of an object; it stores a sequence of instructions for its subsequent reconstruction.

Normally, we only see the result of serialization:

import pickle

payload = pickle.dumps(
{"name": "Alex", "roles": ["admin", "user"]}
)

print(len(payload))


The standard library includes pickletools.dis(), which disassembles the pickle stream and shows its instructions in a readable format.

import pickletools

pickletools.dis(payload)


The output shows the creation of a dictionary, strings, a list, and the operations used to assemble the final object.

EMPTY_DICT
SHORT_BINUNICODE 'name'
SHORT_BINUNICODE 'Alex'
SHORT_BINUNICODE 'roles'
EMPTY_LIST


This is useful when debugging your own classes: you can check which global objects and reconstruction mechanisms are included in the serialization.

class User:
def init(self, name):
self.name = name

payload = pickle.dumps(User("Alex"))

pickletools.dis(payload)

For further analysis, there's pickletools.optimize(): it removes some unused operations from the pickle stream without changing the object being reconstructed.

optimized = pickletools.optimize(payload)

assert pickle.loads(optimized).name == "Alex"


⚠️ pickletools is designed for analyzing pickle streams, not for safely reading untrusted data. You should still not pass unknown pickle data to pickle.loads().

πŸ”₯ pickletools.dis() allows you to peek inside the serialization and see the instructions from which pickle reconstructs the object.

#Python #Pickle #DataScience #Debugging #Coding #DevTools

✨ Join Best TG Channels https://t.me/addlist/0f6vfFbEMdAwODBk

⭐️ Join Our WhatsApp Channel https://whatsapp.com/channel/0029VaC7Weq29753hpcggW2A
❀2
This channels is for Programmers, Coders, Software Engineers.

0️⃣ Python
1️⃣ Data Science
2️⃣ Machine Learning
3️⃣ Data Visualization
4️⃣ Artificial Intelligence
5️⃣ Data Analysis
6️⃣ Statistics
7️⃣ Deep Learning
8️⃣ programming Languages

βœ… https://t.me/addlist/8_rRW2scgfRhOTc0

βœ… https://t.me/Codeprogrammer
Please open Telegram to view this post
VIEW IN TELEGRAM
❀3
This media is not supported in your browser
VIEW IN TELEGRAM
πŸ‘¨β€πŸ’» Junior Engineer Roadmap – a step-by-step guide for starting your career in development from scratch!

This program is designed to take approximately 9 months and gradually covers Python, Git, Linux, SQL, APIs, FastAPI, testing, and Docker, before introducing you to ML, LLMs, RAG, and AI agents. For each stage, we've selected free, Russian-language courses, tutorials, and practical exercises, making this roadmap a convenient ready-made plan for self-study.

Here's the link: https://github.com/bgevorkian/junior-engineer πŸ“±
Please open Telegram to view this post
VIEW IN TELEGRAM
❀2
Forwarded from Udemy Free
Python For Beginners Course In-Depth

Python: A Comprehensive Introduction to Fundamental Python Concepts and the Python Advanced Programming Concepts

🏷 Category: IT & Software
🌍 Language: English
πŸ‘₯ Students: 277,268 students
⭐️ Rating: 4.0/5.0
πŸ’° Price: $39.99 ⟹ FREE
πŸ†” Coupon: β€’β€’β€’β€’β€’β€’β€’β€’β€’β€’ (tap below to reveal)

πŸ”“ Tap "Get Coupon" below β€” the code unlocks inside the app after a short rewarded ad.

πŸ’Ž By: https://t.me/Udemy26
#Python #DataScience #Automation #FreeCourse #Udemy #OnlineLearning
❀1
Please open Telegram to view this post
VIEW IN TELEGRAM
❀2