11/30/2021

Python Website

Release Date: May 3, 2021

This is the tenth and final regular maintenance release of Python 3.8

Note: The release you're looking at is Python 3.8.10, a bugfix release for the legacy 3.8 series. Python 3.9 is now the latest feature release series of Python 3. Get the latest release of 3.9.x here.

Information on tools for unpacking archive files provided on python.org is available. Tip: even if you download a ready-made binary for your platform, it makes sense to also download the source. This lets you browse the standard library (the subdirectory Lib ) and the standard collections of demos ( Demo ) and tools ( Tools ) that come with it. Owing to its user-friendliness, Python has been used to create some of the most popular websites in the world such as: Google. One of the most popular search engines in the world has been built using Python. Python allows Google to switch the traffic and figure out the requirements of search. Welcome to the LearnPython.org interactive Python tutorial. Whether you are an experienced programmer or not, this website is intended for everyone who wishes to learn the Python programming language. You are welcome to join our group on Facebook for questions, discussions and updates.

According to the release calendar specified in PEP 569, Python 3.8.10 is the final regular maintenance release. Starting now, the 3.8 branch will only accept security fixes and releases of those will be made in source-only form until October 2024.

Website

Compared to the 3.7 series, this last regular bugfix release is relatively dormant at 92 commits since 3.8.9. Version 3.7.8, the final regular bugfix release of Python 3.7, included 187 commits. But there's a bunch of important updates here regardless, the biggest being Big Sur and Apple Silicon build support. This work would not have been possible without the effort of Ronald Oussoren, Ned Deily, Maxime Bélanger, and Lawrence D’Anna from Apple. Thank you!

Take a look at the change log for details.

Major new features of the 3.8 series, compared to 3.7

  • PEP 572, Assignment expressions
  • PEP 570, Positional-only arguments
  • PEP 587, Python Initialization Configuration (improved embedding)
  • PEP 590, Vectorcall: a fast calling protocol for CPython
  • PEP 578, Runtime audit hooks
  • PEP 574, Pickle protocol 5 with out-of-band data
  • Typing-related: PEP 591 (Final qualifier), PEP 586 (Literal types), and PEP 589 (TypedDict)
  • Parallel filesystem cache for compiled bytecode
  • Debug builds share ABI as release builds
  • f-strings support a handy = specifier for debugging
  • continue is now legal in finally: blocks
  • on Windows, the default asyncio event loop is now ProactorEventLoop
  • on macOS, the spawn start method is now used by default in multiprocessing
  • multiprocessing can now use shared memory segments to avoid pickling costs between processes
  • typed_ast is merged back to CPython
  • LOAD_GLOBAL is now 40% faster
  • pickle now uses Protocol 4 by default, improving performance
Python

There are many other interesting changes, please consult the 'What's New' page in the documentation for a full list.

More resources

  • PEP 569, 3.8 Release Schedule
  • Report bugs at https://bugs.python.org.
  • Help fund Python and its community.

Windows users

  • The binaries for AMD64 will also work on processors that implement the Intel 64 architecture. (Also known as the 'x64' architecture, and formerly known as both 'EM64T' and 'x86-64'.)
  • There are now 'web-based' installers for Windows platforms; the installer will download the needed software components at installation time.
  • There are redistributable zip files containing the Windows builds, making it easy to redistribute Python as part of another software package. Please see the documentation regarding Embedded Distribution for more information.

macOS users

  • Python 3.8.10 ships two installers: the default 64-bit-only that works on macOS 10.9 (Mavericks) and later systems, and an experimental 'universal2' installer for macOS 11 (Big Sur) and later
  • Please read the 'Important Information' displayed during installation for information about SSL/TLS certificate validation and the running the 'Install Certificates.command'.

And Now For Something Completely Different

Mr. Praline (John Cleese): 'ELLO POLLY!!! Testing! Testing! This is your nine o'clock alarm call!
(Takes parrot out of the cage , throws it up in the air and watches it plummet to the floor.)
Mr. Praline: Now that's what I call a dead parrot.
Owner (Michael Palin): No, no... No, he's stunned!
Mr. Praline: STUNNED?!
Owner: Yeah! You stunned him, just as he was wakin' up! Norwegian Blues stun easily, major.
Mr. Praline: Um... now look, mate. I've definitely 'ad enough of this. That parrot is definitely deceased, and when I purchased it not 'alf an hour ago, you assured me that its total lack of movement was due to it bein' tired and shagged out following a prolonged squawk.
Owner: Well, he's... he's, ah... probably pining for the fjords.

VersionOperating SystemDescriptionMD5 SumFile SizeGPG
Gzipped source tarballSource release83d71c304acab6c678e86e239b42fa7e24720640SIG
XZ compressed source tarballSource released9eee4b20155553830a2025e4dcaa7b318433456SIG
macOS 64-bit Intel installerMac OS Xfor macOS 10.9 and later690ddb1be403a7efb202e93f3a994a4929896827SIG
macOS 64-bit universal2 installerMac OS Xexperimental, for macOS 11 Big Sur and later; recommended on Apple Siliconae8a1ae082074b260381c058d0336d0537300939SIG
Windows embeddable package (32-bit)Windows659adf421e90fba0f56a9631f79e70fb7348969SIG
Windows embeddable package (64-bit)Windows3acb1d7d9bde5a79f840167b166bb6338211403SIG
Windows help fileWindowsa06af1ff933a13f6901a75e59247cf958597086SIG
Windows installer (32-bit)Windowsb355cfc84b681ace8908ae50908e876127204536SIG
Windows installer (64-bit)WindowsRecommended62cf1a12a5276b0259e8761d4cf4fe4228296784SIG

Python Website Scraping

Web development is the umbrella term for conceptualizing, creating,deploying and operating web applications andapplication programming interfacesfor the Web.

Why is web development important?

The Web has grown a mindboggling amount in the number of sites, users andimplementation capabilities since thefirst website went livein 1989. Web development is the conceptthat encompasses all the activities involved with websites and webapplications.

How does Python fit into web development?

Python can be used to build server-side web applications. While aweb framework is not required to build web apps,it's rare that developers would not use existing open source libraries tospeed up their progress in getting their application working.

Python is not used in a web browser. The language executed in browserssuch as Chrome, Firefox and Internet Explorer isJavaScript. Projects such as pyjscan compile from Python to JavaScript. However, most Python developerswrite their web applications using a combination of Python and JavaScript.Python is executed on the server side while JavaScript is downloaded tothe client and run by the web browser.

Python Website

Web development resources

To become an experienced web developer you need to know the foundationprinciples that the web is built with, such as HTTP requests and responses,client (typically web browsers) and server (web serverssuch as Nginx and Apachearchitectures, HTML,CSS and JavaScript, amongmany other topics. The following resources provide a range of perspectivesand when combined together should get you oriented in the web developmentworld.

  • How the Internet worksis a must-read to get a quick overview of all the pieces that go intoa network connection from one machine to another. The example explains howan email is sent and the story is just as useful for learning about otherconnections such as downloading a webpage.

  • If you want to be a web developer it's important to know the foundationaltools used to build websites and web applications. It is also important tounderstand that the core concepts such asHTTP, URLs and HTML were all thereat the beginning and then were expanded with new specifications over time.This article on theHistory of the Websuccinctly explains the origins of the web starting from Tim Berners-Lee'sorigin vision and release at CERN.

  • Web Architecture 101is a great high-level overview of the technologies that run the modernweb, such as DNS, load balancers, web application servers (for Pythonthat equates to WSGI servers),data bases, task queues,caching and several other critical concepts.

  • The Evolution of the Web visualizeshow web browsers and related technologies have changed over time as well asthe overall growth of the Internet in the amount of data transferred. Notethat the visualization unfortunately stops around the beginning of 2013 butit's a good way to explore what happened in the first 24 years.

  • What happens when? is anincredibly detailed answer to the questions 'What happens when youtype google.com into your browser's address box and press enter?' thatseems straightforward on the surface until you really dig in.

  • How browsers workprovides an overview with solid detail on how browsers take the HTML,CSS, JavaScript, images and other files as input and render webpages asoutput. It is well worth your time to know this stuff as a web developer.

  • The history of the URLexplains how the growth of ARPANET to hundreds of nodes eventually led tothe creation of the URL. This is a great read that provides historicalcontext for why things are the way they are with the web.

  • Web app checklist presentsgood practices that developers building and deployingweb applications should follow. Don't worry about having every singleone of these recommendations implemented before getting your sitelive, but it is worthwhile to review the list to make sure there is notsomething obvious you can handle in a few minutes that will improveyour site's security, performance or usability.

  • Web application development is different and betterprovides some context for how web development has evolved from writingstatic HTML files into the complex JavaScript client-side applicationsproduced today.

  • The Browser Hacker's Guide to Instantly Loading Everythingis a spectacular technical talk given by Addy Osmani at JSConf EU 2017that has great bits of developer knowledge for both beginner andexperienced web developers alike.

  • Build a web application from scratchand its follow on posts forrequest handlingmiddleware exploresthe fundamentals of web development. Learning these foundational conceptsis critical for a web developer even though you should still plan to use anestablished web framework such asDjango or Flask to build real-worldapplications. Theopen source codefor these posts is available on GitHub.

  • While not Python-specific, Mozilla put together aLearning the Web tutorialfor beginners and intermediate web users who want to build websites.It's worth a look for general web development learning.

  • Web development involves HTTP communication between the server, hostinga website or web application, and the client, a web browser. Knowinghow web browsers works is important as a developer, so take a look atthis article onwhat's in a web browser.

  • Ping at the speed of lightdives into the computer networking weeds with how fast packets travel throughthe internet plumbing. The author created aPython script that scrapes network speedsfrom disparate locations to see what the network speed is in fiber opticcables as a percentage of the speed of light.

  • The critical path: optimizing load times with the Chrome DevToolsprovides a well-written explanation about using Chrome's developerfeatures to improve the performance of your websites and web applications.

  • Three takeaways for web developers after two weeks of painfully slow Internetis a must-read for every web developer. Not everyone has fast Internetservice, whether because they are in a remote part of the world or they'rejust in a subway tunnel. Optimizing sites so they work in those situationsis important for keeping your users happy.

  • The History of the URL: Path, Fragment, Query, and Authgives a comprenhensive historical perspective on the fundamentalway to link to resources on the web. This post should be required readingfor web developers.

  • Quantum Up Close: What is a browser engine?explains how a browser takes inHTML,JavaScript,CSS,images and anyother data and files to produce a webpage as output.

  • How to understand performance testsis an important topic because many websites are slow and bloated.Learning about improving the performance of your site is one ofthe best ways to become a better web developer. Another great article onwebsite performance isThe average web page is 3MB. How much should we care?.The visuals alone tell a compelling story about how large webpagesizes have grown in recent years.

Let's get started. What do you want to learn right now?

I want to learn how to code a Python web application using a framework.

I've built a Python web app, now how do I deploy it?