What’s New In Python 3.12

Elshad Karimov
2 min readDec 17, 2023

Python enthusiasts, the wait is over — Python 3.12 is here, and it’s packed with updates that refine the coding experience. Let’s dive into the key highlights with some practical examples:

  1. Enhanced f-strings: f-strings are now more flexible, allowing for multi-line expressions and comments.
# Before Python 3.12:
f"Result: {value}" # Couldn't span multiple lines or include comments
# In Python 3.12:
f"""
Result: {
value # You can now include inline comments!
}
"""

2. Filesystem Improvements: The pathlib and os modules got a tune-up for better file handling.

# pathlib.Path now supports subclassing
class MyPath(pathlib.Path):
# Custom methods can be added to extend functionality
def read_as_upper(self):
return self.read_text().upper()

3. Performance Boosts: The asyncio module has seen significant improvements, ideal for those who rely on asynchronous programming.

# Asyncio performance improvements
import asyncio
async def main():
# Perform IO-bound and high-level structured network code
await asyncio.sleep(1)
print("Async code just got faster!")

4. Typing Module: New syntax for generic types and aliases promotes clearer code with static type checkers.

--

--

Elshad Karimov
Elshad Karimov

Written by Elshad Karimov

Software Engineer, Udemy Instructor and Book Author, Founder at AppMillers