Start Here

Thanks for buying an Early Access copy of CPython Internals: Your Guide to the Python 3 Interpreter and supporting Real Python! You’re awesome!

You can access additional resources, such as sample code and errata, at the following URL:

realpython.com/cpython-internals/resources/

Happy Pythoning!

FAQ

Locked learning resources

Join us and get access to thousands of tutorials and a community of expert Pythonistas.

Unlock This Lesson

Already a member? Sign-In

Locked learning resources

The full lesson is for members only. Join us and get access to thousands of tutorials and a community of expert Pythonistas.

Unlock This Lesson

Already a member? Sign-In

Avatar image for Nick Dat Le

Nick Dat Le on June 25, 2020

Great work Anthony et al! Just the resource I’ve been looking for :)

Avatar image for Curtis Bucher

Curtis Bucher on July 13, 2020

If we already payed for the prerelease, will we get the paperback when it comes out?

Avatar image for Dan Bader

Dan Bader RP Team on July 13, 2020

Once we’re out of Early Access with the digital edition we are going to get a paperback version ready for publishing. When the paperback version is released it will be a separate purchase from Amazon or your favorite local book store.

Avatar image for dgrunwal

dgrunwal on Aug. 15, 2020

Will work through the book and give comments and learn CPython of course.

Avatar image for seyoung

seyoung on Aug. 18, 2020

Thank you. It was a pleasant read. I’d be happy to read more on different modules in the standard library :)

Avatar image for Mauricio

Mauricio on Sept. 12, 2020

Hi. Hate to be the first one. I’m stuck. I cannot get to call ./configure properly. Have done autoreconf -i first and still nothing. Error is:

checking for git... found
configure: error: cannot run /bin/bash ./config.sub

Also, I am on WSL 2, can’t say if it’s part of the issue. When I run make -j2 -s I get error no targets. Anyone help?

Avatar image for Mauricio

Mauricio on Sept. 13, 2020

UPDATE: I have done some progress. Doing dos2unix ** helped ./configure do its thing.

However, it doesn’t make the Makefile as ./configure still errors out. It says, at the very end of the ./configure process "mv: cannot stat 'config.c': No such file or directory"

Will continue trying, however, any help is appreciated.

Avatar image for Mauricio

Mauricio on Sept. 13, 2020

EDIT to UPDATE: I also had to pass the build type in order to ./configure commence its process, --build=i689-pc-linux

Avatar image for Mauricio

Mauricio on Sept. 13, 2020

SOLUTION: I deleted everything and cloned it again. This time, I used the force (-f) option when doing the git checkout. Then, regular ./configure and make -j8 succeeded.

Avatar image for oglop

oglop on Dec. 1, 2020

Great information and AWESOME formatting! This is how modern tech books should look. So easy to read the code examples. Thanks for the book and awesome site!

You must own this product to join the conversation.