Learn Python Coding
39.1K subscribers
640 photos
31 videos
24 files
399 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
When you're doing a parser or migrating a site, there's often a pile of unreadable HTML markup on the screen. Converting this into neat Markdown is usually a hassle.

In the open code, I found a convenient tool called python-markdownify, which precisely solves the problem of converting HTML to Markdown.

The logic is simple: you take bulky HTML and get a clear and well-structured Markdown as a result.

The tool is easily customizable. You can clean up the necessary tags, change the format of headings, and neatly process tables and images. All of this can be configured.

It's installed via pip. It can be used both from Python code and from the command line, converting files in batches.

pip install python-markdownify

If desired, you can inherit and redefine the conversion rules for your own cases. The extensibility is fine there.

If you have to process large amounts of text or migrate a blog, the library saves a lot of time that would otherwise be spent on tedious work with regular expressions.

➡️ Link to GitHub
http://github.com/matthewwithanm/python-markdownify

#python #markdown #html #coding #devtools #opensource

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

⭐️ Join Our WhatsApp Channel https://whatsapp.com/channel/0029VaC7Weq29753hpcggW2A
4
🎰 Welcome Bonus 1200% — Maczo Crypto Casino
🎮 Crypto exchange · Sports · Live casino — all in one place
💳 USDT instant deposit & withdrawal
https://tglink.io/f8661e4124cbf0
Advice for Python, UV, and Docker 🐍🐳

Sometimes dependencies are better installed separately from the code — this noticeably speeds up the compilation of Docker images 🚀

The idea is simple: first, we install dependencies, then we add the project 🛠

Why is this necessary:
Docker caches layers and does not rebuild them unnecessarily ⚡️
• if only the code changes — the dependencies are taken from the cache 💾
• if the dependencies change — only the corresponding layer is rebuilt 🔁
• without this, any minor change triggers a full reinstallation 🔄

Example:

RUN --mount=type=cache,target=/root/.cache/uv  --mount=type=bind,source=uv.lock,target=uv.lock  --mount=type=bind,source=pyproject.toml,target=pyproject.toml  uv sync --locked --no-install-project

COPY . /app
RUN --mount=type=cache,target=/root/.cache/uv uv sync --locked


#Python #Docker #DevOps #UV #SoftwareEngineering #TechTips

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

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

🚀 Level up your AI & Data Science skills with HelloEncyclo — a growing all-in-one platform featuring hands-on courses in LLMs, Deep Learning, MLOps, Data Engineering, and more.
13 courses live + 40+ coming soon
🎯 One access, lifetime updates
🔑 Use code: PRESALE-BOOK-WAVE-2GFG
👉 https://helloencyclo.com/?ref=HUSSEINSHEIKHO
4
Limiting program resources using the resource module 🛡️

import resource
import sys

# 1. Limiting the size of RAM (soft and hard limits in bytes)
# Limit the memory to ~50 MB
memory_limit = 50 * 1024 * 1024
resource.setrlimit(resource.RLIMIT_AS, (memory_limit, memory_limit))

# 2. Checking the protection's working
try:
print("Trying to allocate a huge array of memory...")
huge_list = [i for i in range(10_000_000)]
except MemoryError:
print("The limit worked! The program didn't crash, but caught the error.")

# 3. Finding out how many resources the script has already consumed
usage = resource.getrusage(resource.RUSAGE_SELF)
print(f"Peak memory consumption (in KB): {usage.ru_maxrss}")

Protecting the server from "greedy" code 🔧

When you run someone else's code, process user files, or write parsers, there's always a risk of a memory leak or an infinite loop. If such a script runs on the server, it can fill up all the RAM and bring down neighboring important processes (for example, the database). The built-in resource module (works on Unix/Linux/macOS) allows you to strictly limit the program's appetites.

Safe environment: You can limit not only RAM (RLIMIT_AS), but also CPU time (RLIMIT_CPU). If the code goes into an infinite loop, the system will gracefully terminate it after a specified number of seconds.

File system control: Using RLIMIT_FSIZE, you can prevent the script from creating files larger than a certain size. This will save the server's disks from being accidentally overwritten by gigantic logs.

Precise audit: The getrusage function provides detailed statistics on the current process: how much time the CPU spent on calculations, how many I/O operations there were, and what the maximum amount of memory used was during the entire operation.

#Python #ResourceManagement #ServerSafety #Coding #DevOps #Linux

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

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

🚀 Level up your AI & Data Science skills with HelloEncyclo — a growing all-in-one platform featuring hands-on courses in LLMs, Deep Learning, MLOps, Data Engineering, and more.
13 courses live + 40+ coming soon
🎯 One access, lifetime updates
🔑 Use code: PRESALE-BOOK-WAVE-2GFG
👉 https://helloencyclo.com/?ref=HUSSEINSHEIKHO
4
🎁 SPOTO Mid-Year Sale – Grab Your IT Certification Success Kit!

🔥 Whether you're prepping for #Python, #AI, #Cisco, #PMI, #Fortinet, #AWS, #Azure, #Excel, #Comptia, #ITIL, #Cloud or any other hot certification – SPOTO has your back with real exam dumps and hands-on training!

Free Resources:
・Free Python, Excel, Cyber Security, Cisco, SQL, ITIL, PMP, AWS courses: https://bit.ly/4alTSfk
・IT Certs E-book: https://bit.ly/49ub0zq
・IT Exams Skill Test: https://bit.ly/4dVPapB
・Free AI material and support tools: https://bit.ly/4elzcpl
・Free Cloud Study Guide: https://bit.ly/4u7sdG0

🎁 Join SPOTO Mid-Year Lucky Draw:
📱 iPhone 17 🛒 Free Order
🛒 Amazon Gift $100 📘PMP/ AWS/ CCNA Course


👉 Enter the Draw Now → https://bit.ly/4uN3lVt

👉 Join Our IT Learning Community for free resources & support:
https://chat.whatsapp.com/FmbIbbqm2QhKglVpVTSH4d
💬 Want exam help? Chat with an admin now:
https://wa.link/knicza

Mid-Year Deal Ends Soon – Don't Miss Out!
1
⚡️ How Redis counts billions of unique values while barely using memory

There's an algorithm called HyperLogLog. It allows you to roughly estimate how many unique elements have passed through the system, using about 12 KB of memory.

The idea is simple: Redis doesn't store the elements themselves.

It does the following:

- Takes an element
- Calculates a hash from it
- Uses part of the hash as a cell number
- Checks the other part to see how many consecutive zeros it contains
- If the new number is larger than the old one, it updates the cell

Why does this work?

Because a long series of zeros in the hash is rare.

For example:

- 1 consecutive zero - quite common
- 5 consecutive zeros - less common
- 10 consecutive zeros - about a 1 in 1024 chance
- 20 consecutive zeros - a very rare event

If Redis sees a very rare pattern, it means that many different elements have likely passed through it.

Redis uses 16,384 small counters. Each stores the maximum "rarity" it has seen for its group of elements.

Then Redis combines these values mathematically to get an estimate of unique elements.

Not an exact number, but a very close approximation.

The main trick of HyperLogLog:

it can handle millions or even billions of values, but memory hardly increases at all.

That's why Redis can count unique users, IPs, requests, or events without huge tables and lists.

#Redis #HyperLogLog #DataScience #Tech #BigData #MemoryEfficiency

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

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

🚀 Level up your AI & Data Science skills with HelloEncyclo — a growing all-in-one platform featuring hands-on courses in LLMs, Deep Learning, MLOps, Data Engineering, and more.
13 courses live + 40+ coming soon
🎯 One access, lifetime updates
🔑 Use code: PRESALE-BOOK-WAVE-2GFG
👉 https://helloencyclo.com/?ref=HUSSEINSHEIKHO
2
🚨 ONLY THE FIRST 5 GET THIS.

I'm sharing this link with my network once — and only the first 5 people who enroll through it lock in a deal that has never been offered before.

👑 Lifetime access to HelloEncyclo — every AI, ML & Data Science course ever built — for ~$41. Once. Forever.
This isn't a drill. This isn't a rerun.
This is the founding-member price — and it disappears the moment the first 250 seats globally are gone.


13 courses live right now
40+ more in 2–3 weeks
Every future course included automatically
15-day money-back — full refund, no questions

Code: PRESALE-BOOK-WAVE-2GFG

(Log in with Gmail · valid once · applies at checkout)

👇 First 5. That's it.

https://helloencyclo.com/?ref=HUSSEINSHEIKHO

Once those 5 seats go through this link —

I'm not sharing it again. 🔥
1
This media is not supported in your browser
VIEW IN TELEGRAM
🎰 Welcome Bonus 1200% — Maczo Crypto Casino
🎮 Crypto exchange · Sports · Live casino — all in one place
💳 USDT instant deposit & withdrawal
https://tglink.io/10ac0a48667b40
→ Affiliate 60%
2
A 14-day tutorial where you build a Python code-agent CLI in the style of Claude Code from scratch and simultaneously understand how the Agent Harness actually works. 🛠️🤖

In the end, you don't just call a ready-made agent via the API, but you understand the components that make up a Claude Code-like tool. 🧠⚙️

https://github.com/bozhouDev/14days-build-claude-code-cli/blob/main/README.en.md

#Python #AI #ClaudeCode #CLI #CodingTutorial #Tech

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

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

🚀 Level up your AI & Data Science skills with HelloEncyclo — a growing all-in-one platform featuring hands-on courses in LLMs, Deep Learning, MLOps, Data Engineering, and more.
13 courses live + 40+ coming soon
🎯 One access, lifetime updates
🔑 Use code: PRESALE-BOOK-WAVE-2GFG
👉 https://helloencyclo.com/?ref=HUSSEINSHEIKHO
2🔥1
Python can substitute an empty context manager without conditions inside!

It often happens that a resource needs to be opened via with, and sometimes the object is already ready and there's no need to open anything.

This usually leads to code duplication or conditions around with:

if need_open:
f = open(...)
else:
f = existing_file

`nullcontext(obj) behaves like an empty context manager and allows you to maintain a single execution flow.

This is especially useful for APIs, tests, optional resources, dependency injection, and functions that can accept both a path and a ready-made object.

with ctx as resource:
process(resource)

But note that nullcontext() does not close the passed object — it simply passes it on further.

🔥 nullcontext() helps to unify scenarios with optional context managers and significantly simplifies the architecture of IO code.

#Python #ContextManager #CodingTips #DevLife #Programming #Tech

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

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

🚀 Level up your AI & Data Science skills with HelloEncyclo — a growing all-in-one platform featuring hands-on courses in LLMs, Deep Learning, MLOps, Data Engineering, and more.
13 courses live + 40+ coming soon
🎯 One access, lifetime updates
🔑 Use code: PRESALE-BOOK-WAVE-2GFG
👉 https://helloencyclo.com/?ref=HUSSEINSHEIKHO
1