Title: Python 3.15: Cool New Features for You to Try – Real Python
Open Graph Title: Python 3.15: Cool New Features for You to Try – Real Python
Description: Learn what's new in Python 3.15, from lazy imports, frozendict, and sentinels to a sampling profiler and friendlier error messages.
Open Graph Description: Learn what's new in Python 3.15, from lazy imports, frozendict, and sentinels to a sampling profiler and friendlier error messages.
Mail addresses
?subject=Python article for you&body=Python 3.15: Cool New Features for You to Try on Real Python
https://realpython.com/python315-new-features/
Opengraph URL: https://realpython.com/python315-new-features/
X: @realpython
Domain: realpython.com
{
"@context": "http://schema.org",
"@type": "Article",
"headline": "Python 3.15: Cool New Features for You to Try",
"image": {
"@type": "ImageObject",
"url": "https://files.realpython.com/media/Python-3.15-Cool-New-Features-for-You-to-Try_Watermarked.77cc40464977.jpg",
"width": 1920,
"height": 1080
},
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "https://realpython.com/python315-new-features/",
"lastReviewed": "2026-10-12",
"author": {
"@type": "Person",
"name": "Bartosz Zaczy\u0144ski",
"image": "https://realpython.com/cdn-cgi/image/width=1694,height=1694,fit=crop,gravity=auto,format=auto/https://files.realpython.com/media/coders_lab_2109368.259b1599fbee.jpg",
"url": "https://realpython.com/team/bzaczynski/",
"affiliation": {
"@type": "Organization",
"@id": "https://realpython.com/#organization",
"name": "Real Python",
"url": "https://realpython.com",
"logo": "https://realpython.com/static/real-python-logo-square-512.157ae6bf64ed.png"
}
},
"reviewedBy": [
{
"@type": "Person",
"name": "Aldren Santos",
"image": "https://realpython.com/cdn-cgi/image/width=500,height=500,fit=crop,gravity=auto,format=auto/https://files.realpython.com/media/Aldren_Santos_Real_Python.6b0861d8b841.png",
"url": "https://realpython.com/team/asantos/",
"affiliation": {
"@type": "Organization",
"@id": "https://realpython.com/#organization",
"name": "Real Python",
"url": "https://realpython.com",
"logo": "https://realpython.com/static/real-python-logo-square-512.157ae6bf64ed.png"
}
},
{
"@type": "Person",
"name": "Brenda Weleschuk",
"image": "https://realpython.com/cdn-cgi/image/width=320,height=320,fit=crop,gravity=auto,format=auto/https://files.realpython.com/media/IMG_3324_1.50b309355fc1.jpg",
"url": "https://realpython.com/team/bweleschuk/",
"affiliation": {
"@type": "Organization",
"@id": "https://realpython.com/#organization",
"name": "Real Python",
"url": "https://realpython.com",
"logo": "https://realpython.com/static/real-python-logo-square-512.157ae6bf64ed.png"
}
}
]
},
"datePublished": "2026-09-30T14:00:00+00:00",
"dateModified": "2026-10-12T08:15:33.137038+00:00",
"publisher": {
"@type": "Organization",
"@id": "https://realpython.com/#organization",
"name": "Real Python",
"url": "https://realpython.com",
"logo": {
"@type": "ImageObject",
"url": "https://realpython.com/static/real-python-logo-square-512.157ae6bf64ed.png",
"width": 512,
"height": 512
},
"description": "Real Python is a leading provider of online Python education and one of the largest language-specific online communities for software developers. It publishes high-quality learning resources, such as tutorials, books, and courses to an audience of millions of developers, data scientists, and machine learning engineers each month.",
"slogan": "Become a Python Expert",
"email": "info@realpython.com",
"sameAs": [
"https://github.com/realpython",
"https://www.youtube.com/realpython",
"https://twitter.com/realpython",
"https://x.com/realpython",
"https://www.linkedin.com/company/realpython-com/",
"https://www.facebook.com/learnrealpython",
"https://www.instagram.com/realpython",
"https://www.tiktok.com/@realpython.com"
]
},
"author": {
"@type": "Person",
"name": "Bartosz Zaczy\u0144ski",
"image": "https://realpython.com/cdn-cgi/image/width=1694,height=1694,fit=crop,gravity=auto,format=auto/https://files.realpython.com/media/coders_lab_2109368.259b1599fbee.jpg",
"url": "https://realpython.com/team/bzaczynski/",
"affiliation": {
"@type": "Organization",
"@id": "https://realpython.com/#organization",
"name": "Real Python",
"url": "https://realpython.com",
"logo": "https://realpython.com/static/real-python-logo-square-512.157ae6bf64ed.png"
}
},
"description": "Learn what's new in Python 3.15, from lazy imports, frozendict, and sentinels to a sampling profiler and friendlier error messages.",
"hasPart": {
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "When will Python 3.15 be released?",
"acceptedAnswer": {
"@type": "Answer",
"text": "\u003cp\u003ePython 3.15.0 was released on October 9, 2026. It was originally scheduled for October 1 in PEP 790, but a third \u003ca href=\"/ref/glossary/release-candidate/\" class=\"ref-link\"\u003erelease candidate\u003c/a\u003e pushed the final release back by about a week.\u003c/p\u003e"
}
},
{
"@type": "Question",
"name": "What are the new features in Python 3.15?",
"acceptedAnswer": {
"@type": "Answer",
"text": "\u003cp\u003eThe biggest additions are explicit \u003ca href=\"https://realpython.com/python315-lazy-imports/\"\u003elazy imports\u003c/a\u003e with the \u003ccode\u003elazy\u003c/code\u003e keyword, the \u003ccode\u003efrozendict\u003c/code\u003e and \u003ccode\u003esentinel\u003c/code\u003e built-in types, unpacking in comprehensions, and the Tachyon sampling profiler in the new \u003ccode\u003eprofiling\u003c/code\u003e package. The release also makes UTF-8 the default encoding, improves error messages and the REPL, adds \u003ccode\u003eTypeForm\u003c/code\u003e and closed \u003ccode\u003eTypedDict\u003c/code\u003e types to the type system, and upgrades the experimental JIT compiler.\u003c/p\u003e"
}
},
{
"@type": "Question",
"name": "How can you try Python 3.15 without breaking your setup?",
"acceptedAnswer": {
"@type": "Answer",
"text": "\u003cp\u003eRun \u003ccode\u003euv run --python 3.15 python\u003c/code\u003e, and \u003ca href=\"https://realpython.com/python-uv/\"\u003euv downloads\u003c/a\u003e a standalone interpreter that lives next to, not instead of, your current Python. You can also grab the official \u003ca href=\"https://www.python.org/downloads/\"\u003einstallers\u003c/a\u003e from python.org, which install side by side with other versions.\u003c/p\u003e"
}
},
{
"@type": "Question",
"name": "Is Python 3.15 faster than Python 3.14?",
"acceptedAnswer": {
"@type": "Answer",
"text": "\u003cp\u003eOften, but it depends on your platform and build. The official Windows 64-bit installers now use the tail-calling interpreter, which the docs report as 15 to 20 percent faster than the old switch-based interpreter.\u003c/p\u003e\n\u003cp\u003eSeparately, the \u003ca href=\"https://realpython.com/python315-jit-compiler/\"\u003eexperimental JIT\u003c/a\u003e speeds up the official benchmark suite by 7 to 8 percent on x86-64 Linux and by 11 to 12 percent over the tail-calling interpreter on AArch64 macOS, though individual benchmarks vary widely. Lazy imports can also cut startup time for command-line tools.\u003c/p\u003e"
}
},
{
"@type": "Question",
"name": "Do lazy imports make every program faster?",
"acceptedAnswer": {
"@type": "Answer",
"text": "\u003cp\u003eNo. They move import work from startup to first use, which helps short-lived programs like command-line tools that don\u0026rsquo;t touch most of their imports. A long-running program that uses everything it imports pays the same total cost, just later.\u003c/p\u003e"
}
}
]
}
}
| author | Real Python |
| theme-color | #18354c |
| color-scheme | light dark |
| twitter:card | summary_large_image |
| twitter:image | https://files.realpython.com/media/Python-3.15-Cool-New-Features-for-You-to-Try_Watermarked.77cc40464977.jpg |
| og:image | https://files.realpython.com/media/Python-3.15-Cool-New-Features-for-You-to-Try_Watermarked.77cc40464977.jpg |
| twitter:creator | @realpython |
| og:type | article |
| og:site_name | Real Python |
| apple-mobile-web-app-title | Real Python |
Links:
Viewport: width=device-width, initial-scale=1, shrink-to-fit=no, viewport-fit=cover
Robots: max-image-preview:large