Learning Python with Raspberry Pi [NOOK Book]


The must-have companion guide to the Raspberry Pi User Guide!

Raspberry Pi chose Python as its teaching language of choice to encourage a new generation of programmers to learn how to program. This approachable book serves as an ideal resource for anyone wanting to use Raspberry Pi to learn to program and helps you get started with the Python programming language. Aimed at first-time developers with no prior ...

See more details below
Learning Python with Raspberry Pi

Available on NOOK devices and apps  
  • NOOK Devices
  • Samsung Galaxy Tab 4 NOOK 7.0
  • Samsung Galaxy Tab 4 NOOK 10.1
  • NOOK HD Tablet
  • NOOK HD+ Tablet
  • NOOK eReaders
  • NOOK Color
  • NOOK Tablet
  • Tablet/Phone
  • NOOK for Windows 8 Tablet
  • NOOK for iOS
  • NOOK for Android
  • NOOK Kids for iPad
  • PC/Mac
  • NOOK for Windows 8
  • NOOK for PC
  • NOOK for Mac
  • NOOK for Web

Want a NOOK? Explore Now

NOOK Book (eBook)
BN.com price
(Save 45%)$29.99 List Price
Note: This NOOK Book can be purchased in bulk. Please email us for more information.


The must-have companion guide to the Raspberry Pi User Guide!

Raspberry Pi chose Python as its teaching language of choice to encourage a new generation of programmers to learn how to program. This approachable book serves as an ideal resource for anyone wanting to use Raspberry Pi to learn to program and helps you get started with the Python programming language. Aimed at first-time developers with no prior programming language assumed, this beginner book gets you up and running.

  • Covers variables, loops, and functions
  • Addresses 3D graphics programming
  • Walks you through programming Minecraft
  • Zeroes in on Python for scripting

Learning Python with Raspberry Pi proves itself to be a fantastic introduction to coding.

Read More Show Less

Product Details

  • ISBN-13: 9781118717035
  • Publisher: Wiley
  • Publication date: 2/11/2014
  • Sold by: Barnes & Noble
  • Format: eBook
  • Edition number: 1
  • Pages: 288
  • Sales rank: 332,868
  • File size: 3 MB

Table of Contents

Introduction 1

What Is Programming? 1

Why the Raspberry Pi? 2

How Does this Book Work? 2

CHAPTER 1 Getting Up and Running 5

Setting Up Your Raspberry Pi 5

Solving Problems 6

A Quick Tour of Raspbian 7

Using LXDE (Lightweight X11 Desktop Environment) 7

Using the Terminal 8

Changing Configurations with Raspi-Config 10

Installing Software 10

Python 3 11

The Python Interpreter 11

Running Python Programs 11

Summary 12

CHAPTER 2 A Really Quick Introduction to Python 13

Drawing Picture with Turtles 13

Using Loops 16

Conditionals: if, elif, and else 18

Using Functions and Methods to Structure Code 20

A Python Game of Cat and Mouse 21

Understanding Variables 24

Defining Functions 24

Looping Through the Game 25

Summary 26

CHAPTER 3 Python Basics 27

Variables, Values, and Types 27

Values Have Types 28

Storing Numbers 29

Keeping Text in Strings 30

Boolean: True or False 31

Converting Between Data Types 32

Test Your Knowledge 32

Exercise 1 33

Storing Values in Structures 33

Non-Sequential Values in Dictionaries and Sets 37

Test Your Knowledge 38

Controlling the Way the Program Flows 38

Moving Through Data with for Loops 39

Going Deeper with Nested Loops 40

Branching Execution with if Statements 41

Catching Exceptions 42

Exercise 2 43

Making Code Reusable with Functions 43

Optional Parameters 46

Bringing Everything Together 46

Exercise 3 48

Building Objects with Classes 49

Getting Extra Features from Modules 54

Summary 55

Solutions to Exercises 56

Exercise 1 56

Exercise 2 56

Exercise 3 56

CHAPTER 4 Graphical Programming 57

Graphical User Interface (GUI) Programming 58

Adding Controls 60

Test Your Knowledge 62

Exercise 1 62

Creating a Web Browser 62

Adding Window Menus 71

Test Your Knowledge 73

Exercise 2 73

Summary 74

Solutions to Exercises 74

Exercise 1 74

Exercise 2 76

CHAPTER 5 Creating Games 77

Building a Game 79

Initialising PyGame 82

Creating a World 86

Detecting Collisions 88

Moving Left and Right 90

Reaching the Goal 92

Making a Challenge 93

Making It Your Own 97

Adding Sound 98

Adding Scenery 99

Adding the Finishing Touches 101

Taking the Game to the Next Level 102

Realistic Game Physics 103

Summary 108

CHAPTER 6 Creating Graphics with OpenGL 109

Getting Modules 110

Creating a Spinning Cube 110

Vectors and Matrices 112

Bringing It All Together 116

Let There Be Light 120

Calculating the Distance of the Point from the Light Source 120

Calculating Reflecting Angles 121

Making the Screen Dance 126

Building the 3D Model 128

Calculating the Sound Level 129

Taking Things Further 135

Adding Some Texture 136

Summary 136

CHAPTER 7 Networked Python 139

Understanding Hosts, Ports, and Sockets 139

Locating Computers with IP Addresses 140

Building a Chat Server 141

Tweeting to the World 144

Weather Forecasts with JSON 147

Testing Your Knowledge 149

Exercise 1 149

Getting On the Web 149

Making Your Website Dynamic 151

Using Templates 153

Sending Data Back with Forms 153

Exercise 2 155

Keeping Things Secure 155

Summary 159

Solutions to Exercises 160

Exercise 1 160

Exercise 2 161

CHAPTER 8 Minecraft 163

Exploring Minecraft 164

Controlling Your Minecraft World 164

Creating Minecraft Worlds in Python 165

Building Worlds 166

Drawing Pictures 166

Taking Things Further 169

Making the Game Snake 169

Moving the Snake 173

Growing the Snake 173

Adding the Apples 174

Taking Things Further 175

Summary 175

CHAPTER 9 Multimedia 177

Using PyAudio to Get Sound into Your Computer 177

Recording the Sound 179

Speaking to Your Pi 180

Asking the Program Questions 181

Putting It All Together 182

Taking Things Further 184

Making Movies 184

Using USB Webcams 185

Adding Computer Vision Features with OpenCV 187

Taking Things Further 190

Using the Raspberry Pi Camera Module 190

Creating Live Streams 193

Taking Things Further 196

Summary 196

CHAPTER 10 Scripting 197

Getting Started with the Linux Command Line 197

Using the Subprocess Module 200

Command-Line Flags 202

Regular Expressions 203

Testing Your Knowledge 206

Scripting with Networking 207

Bringing It All Together 209

Working with Files in Python 216

Summary 217

CHAPTER 11 Interfacing with Hardware 219

Setting Up Your Hardware Options 219

Female to Male Jumper Wires 219

Pi Cobbler 220

Solderless Breadboard 221

Stripboards and Prototyping Boards 221

PCB Manufacturing 222

Getting the Best Tools 222

Wire Cutters/Strippers 222

Multimeters 222

Soldering Irons 222

Hardware Needed for this Chapter 223

The First Circuit 224

Protecting Your Pi 228

Power Limits 229

Getting Input 229

Expanding the GPIO Options with I2C, SPI, and Serial 231

The SPI Communications Protocol 231

The I2C Communications Protocol 235

The Serial Communications Protocol 236

Taking the Example Further 236

Arduino 236

PiFace 237

Gertboard 237

Wireless Inventor’s Kit 238

Trying Some Popular Projects 238

Robots 238

Home Automation 239

Burglar Alarms 239

Digital Art 239

Summary 239

CHAPTER 12 Testing and Debugging 241

Investigating Bugs by Printing Out the Values 241

Finding Bugs by Testing 245

Checking Bits of Code with Unit Tests 245

Getting More Assertive 250

Using Test Suites for Regression Testing 252

Testing the Whole Package 253

Making Sure Your Software’s Usable 254

How Much Should You Test? 254

Summary 255

Index 257

Read More Show Less

Customer Reviews

Average Rating 5
( 3 )
Rating Distribution

5 Star


4 Star


3 Star


2 Star


1 Star


Your Rating:

Your Name: Create a Pen Name or

Barnes & Noble.com Review Rules

Our reader reviews allow you to share your comments on titles you liked, or didn't, with others. By submitting an online review, you are representing to Barnes & Noble.com that all information contained in your review is original and accurate in all respects, and that the submission of such content by you and the posting of such content by Barnes & Noble.com does not and will not violate the rights of any third party. Please follow the rules below to help ensure that your review can be posted.

Reviews by Our Customers Under the Age of 13

We highly value and respect everyone's opinion concerning the titles we offer. However, we cannot allow persons under the age of 13 to have accounts at BN.com or to post customer reviews. Please see our Terms of Use for more details.

What to exclude from your review:

Please do not write about reviews, commentary, or information posted on the product page. If you see any errors in the information on the product page, please send us an email.

Reviews should not contain any of the following:

  • - HTML tags, profanity, obscenities, vulgarities, or comments that defame anyone
  • - Time-sensitive information such as tour dates, signings, lectures, etc.
  • - Single-word reviews. Other people will read your review to discover why you liked or didn't like the title. Be descriptive.
  • - Comments focusing on the author or that may ruin the ending for others
  • - Phone numbers, addresses, URLs
  • - Pricing and availability information or alternative ordering information
  • - Advertisements or commercial solicitation


  • - By submitting a review, you grant to Barnes & Noble.com and its sublicensees the royalty-free, perpetual, irrevocable right and license to use the review in accordance with the Barnes & Noble.com Terms of Use.
  • - Barnes & Noble.com reserves the right not to post any review -- particularly those that do not follow the terms and conditions of these Rules. Barnes & Noble.com also reserves the right to remove any review at any time without notice.
  • - See Terms of Use for other conditions and disclaimers.
Search for Products You'd Like to Recommend

Recommend other products that relate to your review. Just search for them below and share!

Create a Pen Name

Your Pen Name is your unique identity on BN.com. It will appear on the reviews you write and other website activities. Your Pen Name cannot be edited, changed or deleted once submitted.

Your Pen Name can be any combination of alphanumeric characters (plus - and _), and must be at least two characters long.

Continue Anonymously
Sort by: Showing all of 3 Customer Reviews
  • Posted December 27, 2014

    Do you want to learn computer programming and you also have Rasp

    Do you want to learn computer programming and you also have Raspberry Pi? If you do, this book is for you. Authors Alex Bradbury and Ben Everard have done an outstanding job of writing a book that shows you how to utilize Raspberry Pi to its fullest potential.

    Authors Bradbury and Everard, begin by showing you how to unlock the full power of the tiny computer, from 3D graphics to games programming to controlling electronics to tweeting. Next, the authors give you a taste of how to program. In addition, they go into detail about exactly how to create your own programs in Python. The authors also show you how to build graphical software by using a GUI toolkit. Then, they continue by introducing you to PyGame: Which is a module to help you create games in Python. The authors then show you how to use OpenGL: Which requires some maths, a new programming language, and a host of new concepts. Next, they show you how to send data back and forwards between two computers, by using the host and port number. In addition, the authors help you understand Minecraft: Which is a survival game set in a 3D world of blocks. They also look at two additional sensors that you can give your Pi to allow it to interact with the world in a far more natural way: microphones and cameras. Then, the authors show you how to use Python to make your life easier, by automating housekeeping jobs so that your computer keeps running with minimal intervention. Next, they show you how to control things outside of the Pi; and, the equipment that you will need to try out the various types of examples shown in this book. Finally, the authors show you the judicious use of print ( ) statements, that can help you find out what the problems are.

    This excellent book has given you a good grasp of how to use Python 3. Also, this great book will make you familiar with many of the most useful module add-ons.

    Was this review helpful? Yes  No   Report this review
  • Anonymous

    Posted June 9, 2014


    "Then youve already died." She murmured, disappearing.

    Was this review helpful? Yes  No   Report this review
  • Anonymous

    Posted June 9, 2014


    "Finally someone understands" she grumbled. She got up and walked back to camp.

    Was this review helpful? Yes  No   Report this review
Sort by: Showing all of 3 Customer Reviews

If you find inappropriate content, please report it to Barnes & Noble
Why is this product inappropriate?
Comments (optional)