Python Crash Course: A Hands-On, Project-Based Introduction to Programming

Author: Eric Matthes
This Month Reddit 7

About This Book

Python Crash Course is a fast-paced, thorough introduction to Python that will have you writing programs, solving problems, and making things that work in no time.

In the first half of the book, you’ll learn about basic programming concepts, such as lists, dictionaries, classes, and loops, and practice writing clean and readable code with exercises for each topic. You’ll also learn how to make your programs interactive and how to test your code safely before adding it to a project. In the second half of the book, you’ll put your new knowledge into practice with three substantial projects: a Space Invaders–inspired arcade game, data visualizations with Python’s super-handy libraries, and a simple web app you can deploy online.


As you work through Python Crash Course you’ll learn how to:

*Use powerful Python libraries and tools, including matplotlib, NumPy, and Pygal

*Make 2D games that respond to keypresses and mouse clicks, and that grow more difficult as the game progresses

*Work with data to generate interactive visualizations

*Create and customize Web apps and deploy them safely online

*Deal with mistakes and errors so you can solve your own programming problems


by startupshutdown5   2019-08-24

For beginners you might want to check out:

  • automate the boring stuff -python principles -python crash course
by startupshutdown5   2019-08-24

For beginners you might want to check out:

  • automate the boring stuff -python principles -python crash course
by startupshutdown5   2019-08-24

For beginners you might want to check out:

  • automate the boring stuff -python principles -python crash course
by mamser102   2019-07-21

i really like the book project based learning python, it was really fun to follow.

by rbvm1949   2019-07-21

Thank you, would it be better for me to do Python Principles over a book like 'Python Crash Course'?

by takethecannoli4   2019-07-21

Sure. But stay away from Code Academy, dude. It's buggy, slow and doesn't teach you how to code and run programs on your machine. You should be coding on your actual environment, not on some shitty server. Automate the Boring Stuff with Python is much better - and free. It also has an Udemy course. Python Crash Course is another good option.

by piefawn   2019-07-21

if you have 30-50 dollars to spare I highly recommend this book

ive been using it taking notes on my computer and doing the exercises it has that you follow along with and I love it!

by piefawn   2019-07-21

I recommend this book to anyone starting, especially python, I am a beginner myself, I am on chapter 4 and this book makes me happy every time I open it up

by JFar2012   2019-07-21

I can vouch Python Crash Course. It touches on everything per chapter and has some pretty awesome projects at the end. Definitely worth checking out.

by luxuryUX   2019-07-21

Also, do you have any recommendations for getting started? I'm working my way throughthis book at the moment but if you have any other recommendations for this specific project please let me know

by trying-to-contribute   2019-07-21

There are a lot of books such as:



that cover teaching python to children.


I would suggest something like this:

for you.

by anonymous   2019-07-21

Not sure what's happening on your side, but this code works fine. Here it goes (python 3.6, BSP 4.6.3):

import requests
from bs4 import BeautifulSoup

def s_comments(url):
    headers = {'User-Agent': 'Bob\'s_request'}
    response = requests.get(url, headers=headers )
    if response.status_code != 200:
        raise ConnectionError

    soup = BeautifulSoup(response.content)
    return soup.find_all(class_="a-expander-content a-expander-partial- collapse-content")

url = ''    
reviews = s_comments(url)
for i, review in enumerate(reviews):
    print('---- {} ----'.format(i))
by anonymous   2019-07-21

Try this approach. Turn out that your selector could not find anything. However, I've fixed it to serve the purpose:

import requests
from bs4 import BeautifulSoup

def get_reviews(s,url):
    s.headers['User-Agent'] = 'Mozilla/5.0'
    response = s.get(url)
    soup = BeautifulSoup(response.text,"lxml")
    return soup.find_all("div",{"data-hook":"review-collapsed"})

if __name__ == '__main__':
    link = ''    
    with requests.Session() as s:
        for review in get_reviews(s,link):
by Disclandr   2018-11-10

I am new also. A am using the book Python Crash Course


and it is quite helpful so far. I am going to finish the whole book and type out all the exercises

by gummy_bear_time   2018-11-10

I think the other suggestions are fun, but if he’s serious about learning computer science, programming needs to become second nature.

I recommend this excellent intro book:

Python Crash Course: A Hands-On, Project-Based Introduction to Programming


Automate the Boring Stuff with Python: Practical Programming for Total Beginners

If he already knows how to program, go for a more advanced book. Getting a degree in CS means you’ve got to be able to follow a textbook. CS is also a lot of math and theory. The engineering, like using an Arduino, is more of the application of CS.

Also worth checking out if he enjoys history:

The Chip : How Two Americans Invented the Microchip and Launched a Revolution

by welshfargo   2018-11-10

Python Crash Course

by cloudsinsky   2018-11-10


Both Python Crash Course, and Automate the Boring Stuff are for beginners. However, my understanding is that Python Crash Course gets into object oriented programming while the latter does not. My impression is that ATBS is good for optimizing one's work while PCC is a more complete approach on Python.

by emptythevoid   2018-11-10

It's fantastic.

by lionlazycat   2018-11-10

If u look for a book, try Python Crash Course

by techjuice   2017-08-19
If you want to become a professional and not just a dabbler I would recommend reading some of the following books I have in my bookshelf:

[0] RHCSA & RHCE Training and Exam Preparation Guide by Asghar Ghori. This book will help insure you know your stuff as your system engineer/administrator wise.

[1] A Practical Guide to Linux Commands, Editor and Shell Programming Third Edition. This book will cover the majority of what you would need and want to know when connecting to a remote linux system over ssh.

If you want to get under the hood and become an expert, the following books should help get you started:

[2] Advanced Programming in the UNIX Environment

[3] The Linux Programming Interface: A Linux and UNIX System Programming Handbook

[4] Linux Kernel Development 3rd Edition

To get a nice general overview and get up and going quickly:

[5] How Linux works: What every superuser should know

[6] The Linux Command Line

[7] Python Crash Course

[8] Automate the boring stuff with Python. This is a great book to help you think about how to automate most of the repetitive things you will end up doing on a regular basis.