Convert Figma logo to code with AI

ehmatthes logopcc_3e

Online resources for Python Crash Course, 3rd edition, from No Starch Press.

1,102
435
1,102
2

Top Related Projects

The Leek group guide to data sharing

Python Data Science Handbook: full text in Jupyter Notebooks

Materials and IPython notebooks for "Python for Data Analysis" by Wes McKinney, published by O'Reilly Media

Practical Python Programming (course by @dabeaz)

Python best practices guidebook, written for humans.

Quick Overview

The GitHub repository ehmatthes/pcc_3e contains the source code and resources for the book "Python Crash Course, 3rd Edition" by Eric Matthes. It serves as a companion to the book, providing readers with code examples, exercises, and solutions to help them learn Python programming.

Pros

  • Comprehensive coverage of Python fundamentals and practical projects
  • Well-organized structure following the book's chapters
  • Regular updates to keep the content current with Python's latest features
  • Includes additional resources and cheat sheets for quick reference

Cons

  • May be overwhelming for absolute beginners without the accompanying book
  • Some advanced Python topics are not covered in depth
  • Project-based learning approach may not suit all learning styles
  • Requires self-discipline to work through all the materials effectively

Code Examples

Here are a few code examples from the repository:

  1. Basic list comprehension:
squares = [value**2 for value in range(1, 11)]
print(squares)
  1. Creating a simple class:
class Dog:
    def __init__(self, name, age):
        self.name = name
        self.age = age
    
    def sit(self):
        print(f"{self.name} is now sitting.")

my_dog = Dog('Willie', 6)
my_dog.sit()
  1. Using the Pygame library to create a simple game window:
import pygame

pygame.init()
screen = pygame.display.set_mode((1200, 800))
pygame.display.set_caption("Alien Invasion")

running = True
while running:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            running = False

    pygame.display.flip()

pygame.quit()

Getting Started

To get started with the code examples from this repository:

  1. Clone the repository:

    git clone https://github.com/ehmatthes/pcc_3e.git
    
  2. Navigate to the desired chapter or project folder.

  3. Open the Python files in your preferred IDE or text editor.

  4. Run the code examples and experiment with modifications to enhance your learning.

  5. Refer to the book "Python Crash Course, 3rd Edition" for detailed explanations and exercises.

Competitor Comparisons

The Leek group guide to data sharing

Pros of datasharing

  • Focused on best practices for data sharing in scientific research
  • Concise and well-structured guide for researchers and data scientists
  • Addresses important aspects of data management and reproducibility

Cons of datasharing

  • Limited in scope, primarily covering data sharing guidelines
  • Lacks practical coding examples or exercises
  • Not designed as a comprehensive learning resource for programming

Code comparison

datasharing does not contain code examples, while pcc_3e includes numerous Python code snippets. For example:

pcc_3e:

name = "ada lovelace"
print(name.title())

datasharing: No code examples available

Summary

datasharing is a specialized repository focusing on data sharing guidelines for scientific research, while pcc_3e is a comprehensive Python programming learning resource. datasharing offers valuable insights into data management practices but lacks coding examples. pcc_3e provides extensive Python code samples and exercises, making it more suitable for those learning programming. The choice between these repositories depends on whether you're seeking data sharing best practices or learning Python programming.

Python Data Science Handbook: full text in Jupyter Notebooks

Pros of PythonDataScienceHandbook

  • Focuses on advanced data science topics and libraries (NumPy, Pandas, Matplotlib, Scikit-Learn)
  • Provides in-depth explanations and examples for data analysis and machine learning
  • Includes interactive Jupyter notebooks for hands-on learning

Cons of PythonDataScienceHandbook

  • May be overwhelming for beginners with limited programming experience
  • Less emphasis on general Python programming concepts and basics
  • Not as frequently updated as pcc_3e

Code Comparison

PythonDataScienceHandbook (Data manipulation with Pandas):

import pandas as pd
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})
result = df.groupby('A').sum()

pcc_3e (Basic Python concepts):

numbers = [1, 2, 3, 4, 5]
squares = [number**2 for number in numbers]
print(squares)

The PythonDataScienceHandbook example demonstrates data manipulation using Pandas, while pcc_3e focuses on fundamental Python concepts like list comprehension.

Materials and IPython notebooks for "Python for Data Analysis" by Wes McKinney, published by O'Reilly Media

Pros of pydata-book

  • Focuses on data analysis and scientific computing with Python
  • Covers advanced topics like time series, high-performance tools, and financial data analysis
  • Includes real-world datasets and practical examples

Cons of pydata-book

  • Less beginner-friendly compared to pcc_3e
  • Narrower scope, primarily focused on data analysis rather than general Python programming
  • May require more prior programming knowledge

Code Comparison

pcc_3e example (basic list comprehension):

squares = [value**2 for value in range(1, 11)]
print(squares)

pydata-book example (data analysis with pandas):

import pandas as pd
import numpy as np

df = pd.DataFrame(np.random.randn(6, 4), columns=list('ABCD'))
print(df.describe())

The pcc_3e example demonstrates a simple Python concept, while the pydata-book example showcases more advanced data analysis techniques using libraries like pandas and numpy.

Practical Python Programming (course by @dabeaz)

Pros of practical-python

  • More advanced topics covered, including generators and coroutines
  • Focuses on practical applications and real-world scenarios
  • Includes exercises and solutions for hands-on learning

Cons of practical-python

  • Less beginner-friendly, assumes some prior programming knowledge
  • Fewer visual aids and explanations compared to pcc_3e
  • Less frequent updates and maintenance

Code Comparison

practical-python:

def parse_csv(filename, select=None, types=None, has_headers=True, delimiter=',', silence_errors=False):
    '''
    Parse a CSV file into a list of records
    '''
    with open(filename) as f:
        rows = csv.reader(f, delimiter=delimiter)

pcc_3e:

import csv

filename = 'data/sitka_weather_2018_simple.csv'
with open(filename) as f:
    reader = csv.reader(f)
    header_row = next(reader)

The practical-python example shows a more advanced CSV parsing function with multiple parameters, while pcc_3e demonstrates a simpler approach suitable for beginners.

Python best practices guidebook, written for humans.

Pros of python-guide

  • Comprehensive coverage of Python best practices and ecosystem
  • Community-driven with contributions from many developers
  • Regularly updated with current Python trends and tools

Cons of python-guide

  • Less structured learning path for beginners
  • Lacks hands-on coding exercises and projects
  • May be overwhelming for those new to programming

Code Comparison

python-guide (configuration example):

import os

# Use environment variables for configuration
DATABASE_URL = os.environ.get('DATABASE_URL', 'sqlite:///db.sqlite3')
DEBUG = os.environ.get('DEBUG', 'False').lower() == 'true'

pcc_3e (learning example):

# A simple list comprehension
squares = [x**2 for x in range(10)]
print(squares)

# Output: [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]

The python-guide example demonstrates a more advanced concept of using environment variables for configuration, while pcc_3e focuses on teaching fundamental Python concepts like list comprehensions.

Convert Figma logo designs to code with AI

Visual Copilot

Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.

Try Visual Copilot

README

Python Crash Course - Third Edition

A Hands-On, Project-Based Introduction to Programming

This is a collection of resources for Python Crash Course, Third Edition, an introductory programming book from No Starch Press by Eric Matthes. Click here for a much cleaner version of these online resources.

If you have any questions about Python Crash Course, feel free to get in touch:

Email: ehmatthes@gmail.com

Twitter: @ehmatthes