Exploring pathlib for Working with Paths!
Many projects still use
Since Python 3.4, there's pathlib — an object-oriented API for working with files and directories.
Importing the module is simple:
You can create a path like any regular object:
When working with Path and the
If you need an absolute path, use
Very often when working with files, you need to check if a path exists:
Pathlib also lets you quickly determine the type of file system object:
The Path object has convenient properties for getting path parts. This eliminates manual string parsing and working with
For joining paths, the
Creating directories is also compact and convenient:
Here:
For reading and writing text files, there are built-in methods that cover most everyday tasks:
For binary data,
You can iterate through directory contents using
If you need to search for files by pattern, use
And for recursive directory traversal, there's
Practical example — finding logs older than a certain date. This is a more real-world task:
The
Deleting files and directories is also built directly into the Path API:
It's important to note that pathlib doesn't fully replace shutil or os. For example, for copying files, recursive directory deletion, or complex permission operations, additional modules are usually used.
🔥 pathlib makes working with the file system noticeably cleaner: less string operations, better readability, and more predictable code when working with paths and files.
#Python #Pathlib #Programming #Coding #Developer #SoftwareEngineering #TechTips #LearnPython #PythonTips #FileSystem
https://t.iss.one/pythonRe🌟
Many projects still use
os.path for path operations: join, dirname, exists, and more. It works, but the code quickly becomes cluttered with string manipulations and harder to read — especially when there are many paths being actively combined.Since Python 3.4, there's pathlib — an object-oriented API for working with files and directories.
Importing the module is simple:
from pathlib import Path
You can create a path like any regular object:
path = Path("data/users.json")When working with Path and the
/ operator, the correct separators for the current OS are used automatically. This keeps the code portable between Linux, macOS, and Windows without extra checks.If you need an absolute path, use
resolve():print(path.resolve())
Very often when working with files, you need to check if a path exists:
if path.exists():
print("File found")
Pathlib also lets you quickly determine the type of file system object:
path.is_file()
path.is_dir()
The Path object has convenient properties for getting path parts. This eliminates manual string parsing and working with
split().print(path.name) # users.json
print(path.stem) # users
print(path.suffix) # .json
print(path.parent) # data
For joining paths, the
/ operator is used, which looks noticeably cleaner and is easier to read compared to os.path.join:base = Path("logs")
file_path = base / "2026" / "app.log"Creating directories is also compact and convenient:
Path("backup/archive").mkdir(parents=True, exist_ok=True)Here:
parents=True creates nested directories; exist_ok=True doesn't raise an error if the folder already exists.For reading and writing text files, there are built-in methods that cover most everyday tasks:
config = Path("config.txt")
config.write_text("debug=true", encoding="utf-8")
content = config.read_text(encoding="utf-8")
print(content)For binary data,
read_bytes() and write_bytes() methods are available.You can iterate through directory contents using
iterdir():for file in Path("logs").iterdir():
print(file)If you need to search for files by pattern, use
glob():for py_file in Path(".").glob("*.py"):
print(py_file)And for recursive directory traversal, there's
rglob():for file in Path(".").rglob("*.json"):
print(file)Practical example — finding logs older than a certain date. This is a more real-world task:
from pathlib import Path
from datetime import datetime
logs = Path("logs")
limit_date = datetime(2026, 1, 1)
for file in logs.glob("*.log"):
modified = datetime.fromtimestamp(file.stat().st_mtime)
if modified < limit_date:
print(file.name, modified)
The
stat() method lets you get file metadata: size, modification time, permissions, and other system data.Deleting files and directories is also built directly into the Path API:
path.unlink() # file
path.rmdir() # empty directory
It's important to note that pathlib doesn't fully replace shutil or os. For example, for copying files, recursive directory deletion, or complex permission operations, additional modules are usually used.
🔥 pathlib makes working with the file system noticeably cleaner: less string operations, better readability, and more predictable code when working with paths and files.
#Python #Pathlib #Programming #Coding #Developer #SoftwareEngineering #TechTips #LearnPython #PythonTips #FileSystem
https://t.iss.one/pythonRe
Please open Telegram to view this post
VIEW IN TELEGRAM
❤7
❔ Interview question
What tools are used for error monitoring in Python services?
Answer: Most often, Sentry, centralized logging, and metrics are used. Sentry collects stack traces, context, and shows the frequency of errors.
It's also important to set up alerts - a sharp increase in exceptions usually signals problems after a release or a service degradation.
tags: #interview
https://t.iss.one/pythonRe✅
What tools are used for error monitoring in Python services?
Answer: Most often, Sentry, centralized logging, and metrics are used. Sentry collects stack traces, context, and shows the frequency of errors.
It's also important to set up alerts - a sharp increase in exceptions usually signals problems after a release or a service degradation.
tags: #interview
https://t.iss.one/pythonRe
Please open Telegram to view this post
VIEW IN TELEGRAM
Telegram
Learn Python Coding
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
Admin: @HusseinSheikho || @Hussein_Sheikho
❤5
20 ADVANCED Python MCQ.pdf
4.4 MB
𝗣𝗿𝗲𝗶𝗺𝗶𝗮𝗹 𝗣𝘆𝘁𝗵𝗼𝗻 𝗨𝗹𝘁𝗶𝗺𝗮𝘁𝗲 𝗚𝘂𝗶𝗱𝗲! 🚀🐍✨
#PythonGuide #PythonFunctions #CodingLife #LearnPython #DevCommunity #PyTips
https://t.iss.one/pythonRe✅
𝗜𝗻𝗽𝘂𝘁/𝗢𝘂𝘁𝗽𝘂𝘁 𝗙𝘂𝗻𝗰𝘁𝗶𝗼𝗻𝘀 📥📤
- print()
- input()
- format()
𝗗𝗮𝘁𝗮 𝗧𝘆𝗽𝗲 𝗖𝗼𝗻𝘃𝗲𝗿𝘀𝗶𝗼𝗻 𝗙𝘂𝗻𝗰𝘁𝗶𝗼𝗻𝘀 🔄
- int()
- float()
- str()
- bool()
- complex()
- list()
- tuple()
- set()
- dict()
- frozenset()
- bytes()
- bytearray()
- memoryview()
𝗠𝗮𝘁𝗵𝗲𝗺𝗮𝘁𝗶𝗰𝗮𝗹 𝗙𝘂𝗻𝗰𝘁𝗶𝗼𝗻𝘀 🧮📐
- abs()
- pow()
- round()
- divmod()
- sum()
- min()
- max()
𝗦𝗲𝗾𝘂𝗲𝗻𝗰𝗲 & 𝗖𝗼𝗹𝗹𝗲𝗰𝘁𝗶𝗼𝗻 𝗙𝘂𝗻𝗰𝘁𝗶𝗼𝗻𝘀 📊📑
- len()
- sorted()
- range()
- zip()
- enumerate()
- reversed()
- all()
- any()
𝗧𝘆𝗽𝗲 & 𝗜𝗱𝗲𝗻𝘁𝗶𝘁𝘆 𝗙𝘂𝗻𝗰𝘁𝗶𝗼𝗻𝘀 🔍🆔
- type()
- id()
- isinstance()
- issubclass()
𝗙𝗶𝗹𝗲 𝗛𝗮𝗻𝗱𝗹𝗶𝗻𝗴 𝗙𝘂𝗻𝗰𝘁𝗶𝗼𝗻𝘀 📂📝
- open()
- close()
- read()
- write()
- seek()
- tell()
𝗦𝘁𝗿𝗶𝗻𝗴 𝗙𝘂𝗻𝗰𝘁𝗶𝗼𝗻𝘀 🔤🔠
- ord()
- chr()
- ascii()
- repr()
𝗨𝘁𝗶𝗹𝗶𝘁𝘆 𝗙𝘂𝗻𝗰𝘁𝗶𝗼𝗻𝘀 🛠⚙️
- help()
- dir()
- eval()
- exec()
- hash()
𝗟𝗼𝗴𝗶𝗰𝗮𝗹 & 𝗕𝗶𝗻𝗮𝗿𝘆 𝗖𝗼𝗻𝘃𝗲𝗿𝘀𝗶𝗼𝗻 𝗙𝘂𝗻𝗰𝘁𝗶𝗼𝗻𝘀 🧠🔢
- bin()
- oct()
- hex()
- bool()
𝗠𝗲𝗺𝗼𝗿𝘆 & 𝗢𝗯𝗷𝗲𝗰𝘁 𝗛𝗮𝗻𝗱𝗹𝗶𝗻𝗴 𝗙𝘂𝗻𝗰𝘁𝗶𝗼𝗻𝘀 💾📦
- memoryview()
- object()
- callable()
#PythonGuide #PythonFunctions #CodingLife #LearnPython #DevCommunity #PyTips
https://t.iss.one/pythonRe
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4
Forwarded from Machine Learning with Python
🙏💸 500$ FOR THE FIRST 500 WHO JOIN THE CHANNEL! 🙏💸
Join our channel today for free! Tomorrow it will cost 500$!
https://t.iss.one/+-WZeIeP8YI8wM2E6
You can join at this link! 👆👇
https://t.iss.one/+-WZeIeP8YI8wM2E6
Join our channel today for free! Tomorrow it will cost 500$!
https://t.iss.one/+-WZeIeP8YI8wM2E6
You can join at this link! 👆👇
https://t.iss.one/+-WZeIeP8YI8wM2E6
❤3
Python Basics Notes @pythonRe.pdf
2.4 MB
Python Basics Notes 🐍📚
https://t.iss.one/pythonRe 🔗
#Python #Coding #Programming #LearnPython #Tech #DevCommunity
https://t.iss.one/pythonRe 🔗
#Python #Coding #Programming #LearnPython #Tech #DevCommunity
❤3🔥2
If you work with Python, remember a simple rule: do not modify a list while iterating over it. 🐍🛑 This can lead to unexpected results because the iterator does not track structural changes.
Here is an example that looks logical but works incorrectly: 🤔
It seems that all 2s should disappear, but one remains. ❓ Why?
After removing an element, the list shifts, but the loop moves on — as a result, some values are simply skipped. 🔄🚫
How to do it correctly — iterate over a copy: ✅
Even better — use list comprehension: 🚀
items = [x for x in items if x != 2]
Conclusion: 🏁 do not modify a collection during iteration. This can lead to skipped elements, duplication, or even errors during execution. 🛠️🚧
#Python #Coding #Programming #Debugging #TechTips #PythonTips
Here is an example that looks logical but works incorrectly: 🤔
items = [1, 2, 2, 3, 4]
for item in items:
if item == 2:
items.remove(item)
print(items)
# Output: [1, 2, 3, 4]
It seems that all 2s should disappear, but one remains. ❓ Why?
After removing an element, the list shifts, but the loop moves on — as a result, some values are simply skipped. 🔄🚫
How to do it correctly — iterate over a copy: ✅
for item in items[:]:
if item == 2:
items.remove(item)
print(items)
# Output: [1, 3, 4]
Even better — use list comprehension: 🚀
items = [x for x in items if x != 2]
Conclusion: 🏁 do not modify a collection during iteration. This can lead to skipped elements, duplication, or even errors during execution. 🛠️🚧
#Python #Coding #Programming #Debugging #TechTips #PythonTips
❤2
Many applications require mapping strings to integers. In Python, this usually looks like:
If there are 1 million keys, this can consume a lot of memory — more than 100 bytes per key.
Our elephant has published a new library that uses about 9 bytes per key. Yes, only 9 bytes. Usage looks like this:
It can be significantly faster (for example, up to 2 times in some cases) than the standard dictionary. It can also be serialized and deserialized to disk or network for convenient reuse.
https://pypi.org/project/fastconstmap/
github: https://github.com/lemire/fastconstmap
👉 @PythonRe
d = {"apple": 100, "banana": 200, "cherry": 300}If there are 1 million keys, this can consume a lot of memory — more than 100 bytes per key.
Our elephant has published a new library that uses about 9 bytes per key. Yes, only 9 bytes. Usage looks like this:
from fastconstmap import ConstMap
d = {"apple": 100, "banana": 200, "cherry": 300}
m = ConstMap(d)
m["apple"] # -> 100
m.get_many(["banana", "cherry"]) # -> [200, 300]
It can be significantly faster (for example, up to 2 times in some cases) than the standard dictionary. It can also be serialized and deserialized to disk or network for convenient reuse.
https://pypi.org/project/fastconstmap/
github: https://github.com/lemire/fastconstmap
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6
The Python library itertools contains many useful functions. 🐍✨
One of them is compress(), which returns an iterator over the elements from data, for which the corresponding element in selectors is equal to True. 🔍💻
Here's an example: 📝👇
#Python #Programming #Itertools #Coding #Tech #DataScience
One of them is compress(), which returns an iterator over the elements from data, for which the corresponding element in selectors is equal to True. 🔍💻
Here's an example: 📝👇
#Python #Programming #Itertools #Coding #Tech #DataScience
🔥2
Cheat sheet on the basics of Python: 🐍📚
basic syntax and language rules 📝
scalar types — basic data types (int, float, bool, str, NoneType) 🔢
datetime — working with date and time 📅⏰
data structures — Python data structures (list, tuple, dict, set) 🗄
list — mutable lists for storing data collections 📋
tuple — immutable sequences of values 🔒
dict (hash map) — storing data in a key-value format 🗝
set — unique elements without order 🔘
slicing — obtaining parts of sequences through indices and step ✂️
module/library — connecting modules and libraries 🔌
help functions — using help() and dir() to explore the Python API 🛠
#Python #Coding #DataScience #Programming #Tech #DevCommunity
basic syntax and language rules 📝
scalar types — basic data types (int, float, bool, str, NoneType) 🔢
datetime — working with date and time 📅⏰
data structures — Python data structures (list, tuple, dict, set) 🗄
list — mutable lists for storing data collections 📋
tuple — immutable sequences of values 🔒
dict (hash map) — storing data in a key-value format 🗝
set — unique elements without order 🔘
slicing — obtaining parts of sequences through indices and step ✂️
module/library — connecting modules and libraries 🔌
help functions — using help() and dir() to explore the Python API 🛠
#Python #Coding #DataScience #Programming #Tech #DevCommunity
❤5🔥3👍2
Do you know that Python can shift sequences without slicing and creating new lists? 🤔
When you need to cyclically shift data, many use slicing:
But
A negative value rotates the queue in the other direction. ⬅️
This is useful for ring buffers, task schedulers, cyclical queues, and round-robin algorithms. 🔄
🔥
#Python #Programming #Deque #CodingTips #Tech #DevCommunity
When you need to cyclically shift data, many use slicing:
data = data[-1:] + data[:-1]
But
deque.rotate() does this at the level of the data structure and usually works more efficiently for cyclical operations. 🚀q.rotate(1)
A negative value rotates the queue in the other direction. ⬅️
q.rotate(-2)
This is useful for ring buffers, task schedulers, cyclical queues, and round-robin algorithms. 🔄
workers.rotate(-1)
🔥
deque.rotate() allows you to implement cyclical data structures without manual index logic and without creating new lists. 💡#Python #Programming #Deque #CodingTips #Tech #DevCommunity
❤7
"Open Data Structures" is another very useful free resource for anyone studying data structures and algorithms. 📚✨
The book discusses the implementation and analysis of basic structures: array-based lists, linked lists, hash tables, binary trees, red-black trees, heaps, sorting algorithms, graphs, and data structures for working with integers. 🔍🧮
This is a full-fledged open textbook for studying one of the fundamental topics of computer science and a good reference that's worth keeping on hand. 💻🌟
https://opendatastructures.org/ods-python.pdf 📄
👉 @PythonRe
#DataStructures #Algorithms #Python #ComputerScience #OpenSource #Learning
The book discusses the implementation and analysis of basic structures: array-based lists, linked lists, hash tables, binary trees, red-black trees, heaps, sorting algorithms, graphs, and data structures for working with integers. 🔍🧮
This is a full-fledged open textbook for studying one of the fundamental topics of computer science and a good reference that's worth keeping on hand. 💻🌟
https://opendatastructures.org/ods-python.pdf 📄
#DataStructures #Algorithms #Python #ComputerScience #OpenSource #Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5
How to check for the presence of subclasses in Python? 🐍🧐
Here's how you can do it:
This function uses the
#Python #Programming #Subclasses #Coding #Dev #Tech
Here's how you can do it:
import inspect
def has_subclasses(cls):
return any(issubclass(sub, cls) for sub in inspect.getmembers(sys.modules[cls.__module__], inspect.isclass))
This function uses the
inspect module to find all subclasses of the given class. 🛠️#Python #Programming #Subclasses #Coding #Dev #Tech
❤4👍1
📂 Reminder about Python map()!
map() — a built-in function that applies the specified function to each element of an iterable object (list, tuple, set, etc.).
The picture shows the basic syntax, an example of use with lambda, and a typical case — data transformation without a manual for loop.
Save it to quickly remember the syntax!
🐍💻🗺️ #Python #Coding #Programming #LearnToCode #DevTips #Tech
map() — a built-in function that applies the specified function to each element of an iterable object (list, tuple, set, etc.).
The picture shows the basic syntax, an example of use with lambda, and a typical case — data transformation without a manual for loop.
Save it to quickly remember the syntax!
🐍💻🗺️ #Python #Coding #Programming #LearnToCode #DevTips #Tech
❤6👍1
If you're working with data pipelines, these repositories are very useful: 🚀📊
ibis: A Python API that allows you to write queries once and run them on different data backends, such as DuckDB, BigQuery, and Snowflake. 🐍🔗
https://github.com/ibis-project/ibis
pygwalker: Instantly turns a DataFrame into an interactive UI for visual data exploration. 📈🖥️
https://github.com/Kanaries/pygwalker
katana: A fast and scalable web crawler, often used for security testing and large-scale data collection/search. 🕷️🔒
https://github.com/projectdiscovery/katana
#dataengineering #python #opensource #devtools #dataviz #security
ibis: A Python API that allows you to write queries once and run them on different data backends, such as DuckDB, BigQuery, and Snowflake. 🐍🔗
https://github.com/ibis-project/ibis
pygwalker: Instantly turns a DataFrame into an interactive UI for visual data exploration. 📈🖥️
https://github.com/Kanaries/pygwalker
katana: A fast and scalable web crawler, often used for security testing and large-scale data collection/search. 🕷️🔒
https://github.com/projectdiscovery/katana
#dataengineering #python #opensource #devtools #dataviz #security
❤3
Vip Number Hack Of TashanWin Game !!
10 Vip Number Sureshots Khatarnak !! 😱🔥
HACK LINK HERE 👇
https://t.iss.one/+vXSPQL1WildiZmZl
https://t.iss.one/+vXSPQL1WildiZmZl
https://t.iss.one/+vXSPQL1WildiZmZl
Apk Features ::
1. 99% Accurate Prediction
2. Daily Unlimited Use
3. Free Access To Use
4. Daily Profit Limit UpTo ₹30000
🔴 Vip Number Hack Apk Link Here 👇 👇
https://t.iss.one/+vXSPQL1WildiZmZl
https://t.iss.one/+vXSPQL1WildiZmZl
https://t.iss.one/+vXSPQL1WildiZmZl
#ad📢 InsideAd
10 Vip Number Sureshots Khatarnak !! 😱🔥
HACK LINK HERE 👇
https://t.iss.one/+vXSPQL1WildiZmZl
https://t.iss.one/+vXSPQL1WildiZmZl
https://t.iss.one/+vXSPQL1WildiZmZl
Apk Features ::
1. 99% Accurate Prediction
2. Daily Unlimited Use
3. Free Access To Use
4. Daily Profit Limit UpTo ₹30000
🔴 Vip Number Hack Apk Link Here 👇 👇
https://t.iss.one/+vXSPQL1WildiZmZl
https://t.iss.one/+vXSPQL1WildiZmZl
https://t.iss.one/+vXSPQL1WildiZmZl
#ad
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2