Static websites are easier to deploy than full web applications built with a web framework that rely on a persistent database backend. In addition, static sites are typically much faster to load because there are no database queries or middleware code to execute during the HTTP request-response cycle.
A web server that hosts a static website simply responds to inbound HTTP requests with the file being requests - no dynamic data is populated on the server during the response.
The Long Road to Building a Static Blog with Pelican is a fantastic read that really gets into the details throughout the walkthrough.
How I built this website, using Pelican walks through getting your first Pelican site generated and running.
Setting up a blog with Pelican and Amazon S3 lays out the basic steps for installing Pelican, creating your first site and then uploading the generated results to S3. A good next exercise not covered in the post is using CloudFront or CloudFlare as a content delivery network (CDN) to server the static content.
Getting started with Pelican and GitHub pages is a tutorial I wrote to use the Full Stack Python source code to create and deploy your first static site.