Table of Contents
If you search for Python recommended books in English, you will find most of them on every website [Python Crash Course: A Hands-On, Project-Based Introduction to Programming](https://www.amazon.com/Python-Crash]. -Course-Hands-Project-Based / dp / 1593276036), Eric Matthes. Even if you look at Amazon's review, it is highly acclaimed, and according to the official site, it is the best-selling Python book in the world.
Python Crash Course is the world’s best-selling guide to the Python programming language.
I used this book to get started with Python. In this article, I would like to introduce you to the Python Crash Course.
This article was also posted on https://achiwa912.github.io/.
Suddenly, the Python Crash Course (hereafter abbreviated as Crash Course) was a very good introduction to Python. I think it is recommended for beginners of all levels. The following points are particularly excellent.
--Abundant hands-on --Three different practical projects --Polite and easy-to-understand explanation
The Crash Course is divided into two parts, Part I: BASICS and PART II: PROJECTS.
Part I: BASICS
Part I describes the basics of Python. As the title of the book includes "hands-on", enter the code snippets and let the body (hand) remember what you understood with your head while actually moving it. I'm also good at putting out code snippets. The part of one file comes out little by little, and the amount to be input at one time is also a good idea.
At the end of each relatively short chapter, there is a hands-on called TRY IT YOURSELF, which will be reviewed in a short cycle. Repeating is important for the body to remember and settle, but I think that the amount of hands-on is sufficient for that purpose.
Part II: PROJECTS
Part II uses the basic knowledge of Python learned in Part I to create a program that is organized to some extent in a project format. This was practical and very fun.
The first project will create a shooting game similar to the Invaders game. Use pygame as the game library. Personally, this was a hit. When I finished the project, I decided to stop reading and make a game. (Although I endured it and recommended up to Project 3)
Python is said to be battery included, and there are many non-standard libraries. It is also important to learn how to install and use the library. The project will show you how to use the library.
In the project, we will make it little by little like normal development. At first, just display the bitmap of your own machine, then move it with the key, display one enemy, display a lot in a loop, hit a bullet, defeat the enemy, etc. It's fun to be able to program little by little.
As the program grows, refactoring is also learned as hands-on. Cut out the part that is too long as a function and make it independent. It's an introduction to Python, but it also covers these general requirements for software development.
The next project will visualize the data available on the net using a library such as matplotlib. Do something like the basics of scraping basics. This project is practical and ready to go, but I felt a little lacking in digging. Is it overkill to ask for that much in the introductory book? .. .. Again, what you've learned in this project is immediately applicable.
The final project uses Django to create something like a dynamic blog generator. It's an ambitious project, but the difficulty suddenly increases, probably because of the lack of space in this book. The hard part is how to use Django, not Python. It's hard to write a lot of unfamiliar Django config files and html files, and debugging when it doesn't work is even harder.
Personally, I repeated the hands-on of the text twice, and even TRY IT YOURSELF, I finally understood how to use Django. I also left this book to find out about Django on the Web. I think that if you do so far, you will gain a lot of power.
Besides this book, I've only read Introducing Python There may be. However, even so, the explanation of Crash Course was very easy to understand.
Sometimes the explanation is good, but the method of narrowing down the content to be explained is also good. While there isn't much written about branches and leaves, important things come up repeatedly. The first clarity is especially important because this book is a style that first explains the basic concepts (for example, "what is a list") and then establishes it with repeated hands-on.
When a beginner who just read the introductory book tries to code, he is worried about "how to turn the for loop", "else if, elif", "do you need": "?" (Only me?). And when I try to move it and get an error, I don't understand the meaning of the error message, and I have no idea what is wrong. In this way, I think there are surprisingly many patterns that can be frustrated.
The only way (I think) to overcome this is to have your body (hands) remember it hands-on. The best thing about this book is that it has a lot of hands-on, so you can remember the things mentioned above before you worry.
Alongside the abundance of hands-on, three practical projects are the highlights of this book. Through the project, you can learn not only the basics of Python but also software development comprehensively.
I think there is a gap between the level you just finished the introductory book and the level you can actually code, and the hands-on project fills this gap. It's a little over 500 pages long, but I think it's not too long because it covers content that goes beyond the scope of a general introductory book. (If it is a Japanese book, will it be divided into upper and lower volumes?)
The Python Crash Course is a great introduction to Python, but for some reason it hasn't been translated into Japanese. (I think it will sell ...)
Personally, I highly recommend reading English technical books. The English of the technical book is simple, and I think that anyone who is high school student or older and has no English allergies can read it. (Note that the English for Introducing Python mentioned above is a bit difficult, so I wouldn't recommend it to anyone new to reading English. It's a very good book, but it's not a beginner's guide.)
Also, as you become more accustomed to reading English, you will have access to much more technical information on the Internet than in Japanese.
If you want to get started with Python but are looking for a good reference book, why not use the Python Crash Course to get started while studying English?
In addition, you can download Chapter 2 from here. https://nostarch.com/pythoncrashcourse2e The screen shot used these two chapters.
With the Python Crash Course, I'm finally able to program in Python without frustration. With gratitude, I introduced it in this article.