This short brief explanation revolves around 3D in PyGame. If you are interested in a working PyGame framework, check this article.
PyGame Is Not Designed for 3D Graphics
Let me explain that PyGame is a wrapper for SDL and SDL is just a 2D framework. There is, however, a Vector3 class in PyGame, which is only useful if you know how to display points in 3D.
Using polygons, you must compute the vertices using vector arithmetic and stitch the geometry together if you wish to generate a 3D scene with PyGame. If one thinks about it, 3D is a skewed 2D.
All the 3D Games we play are displayed on 2D Surfaces that are our monitors. So if you invest the time and have really good math skills, you can make your 3D framework with PyGame.