The reason why is because in the 80s it was useful to build up programs from scratch. So you could build an introductory course around that and even use an arcane language like Scheme, which the students are bound to almost never encounter in real-world usage, to illustrate the principles. These days, to teach someone real-world software development, you have to show them how to find and use a library that does what they want, or maintain an already-existing code base -- use cases for which Python is a much better fit. Building a program up from scratch is almost never done.