Learning Python with Raspberry Pi

Learning Python with Raspberry Pi

By: Russel Winder (author), Alex Bradbury (author), Ben Everard (author)Paperback

1 - 2 weeks availability

£12.59 RRP £17.99  You save £5.40 (30%) & FREE Saver Delivery on orders over £25

Description

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.

Create a review

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

Product Details

  • publication date: 12/03/2014
  • ISBN13: 9781118717059
  • Format: Paperback
  • Number Of Pages: 286
  • ID: 9781118717059
  • weight: 524
  • ISBN10: 1118717058

Delivery Information

  • Saver Delivery: Yes
  • 1st Class Delivery: Yes
  • Courier Delivery: Yes
  • Store Delivery: Yes

Prices are for internet purchases only. Prices and availability in WHSmith Stores may vary significantly

Close