Murach's Python Programming
Publisher: Mike Murach & Associates
Published: Dec 13, 2016
Language: eng
Number of pages: 590
ISBN-13: 9781890774974
Description: If you want to learn how to program but don't know where to start, this is the right book and the right language for you. From the first page, our unique self-paced approach will help you build competence and confidence in your programming skills. And Python is the best language ever for learning how to program because of its simplicity and breadth]]two features that are hard to find in a single language. But this isn't just a book for newbies! Our self-paced approach also works for experienced programmers, helping you learn faster and better than you've ever learned a language before. By the time you're through, you will have mastered all of the Python skills that are needed on the job, including those for object-oriented, database, and GUI programming. To make all of this possible, section 1 of this book presents an 8-chapter course that will get anyone off to a great start. Section 2 builds on that base by presenting the other essential skills that every Python programmer should have. Section 3 shows you how to develop object-oriented programs, a critical skillset in today's world. And section 4 shows you how to apply all of the skills that you've already learned as you build database and GUI programs for the real world.
Table of contents: label: Section 1
title: Essential Concepts and Skills; label: Chapter 1
title: An Introduction to Python Programming; title: Introduction to Python
pagenum: 4; title: Why Python Works So Well as Your First Programming Language
pagenum: 4; title: Three Types of Python Applications
pagenum: 6; title: The Source Code for a Console Application
pagenum: 8; title: How Python Compiles and Runs Source Code
pagenum: 10; title: How Disk Storage and Main Memory Work Together
pagenum: 12; title: How to Use IDLE to Develop Programs
pagenum: 14; title: How to Use the Interactive Shell
pagenum: 14; title: How to Work with Source Files
pagenum: 16; title: How to Compile and Run a Program
pagenum: 18; title: How to Fix Syntax and Runtime Errors
pagenum: 20; label: Chapter 2
title: How to Write Your First Programs; title: Basic Coding Skills
pagenum: 28; title: How to Code Statements
pagenum: 28; title: How to Code Comments
pagenum: 30; title: How to Use Functions
pagenum: 32; title: How to Work with Data Types and Variables
pagenum: 34; title: How to Assign Values to Variables
pagenum: 34; title: How to Name Variables
pagenum: 36; title: How to Work with Numeric Data
pagenum: 38; title: How to Code Arithmetic Expressions
pagenum: 38; title: How to Use Arithmetic Expressions in Assignment Statements
pagenum: 40; title: How to Use the Interactive Shell for Testing Numeric Operations
pagenum: 42; title: How to Work with String Data
pagenum: 44; title: How to Assign Strings to Variables
pagenum: 44; title: How to Join Strings
pagenum: 44; title: How to Include Special Characters in Strings
pagenum: 46; title: How to Use the Interactive Shell for Testing String Operations
pagenum: 48; title: How to Use Five of the Python Functions
pagenum: 50; title: How to Use the print() Function
pagenum: 50; title: How to Use the input() Function
pagenum: 52; title: How to Use the int(), float(), and round() Functions
pagenum: 54; title: How to Chain Functions
pagenum: 54; title: Two Illustrative Programs
pagenum: 56; title: The Miles Per Gallon Program
pagenum: 56; title: The Test Scores Program
pagenum: 58; label: Chapter 3
title: How to Code Control Statements; title: How to Code Boolean Expressions
pagenum: 66; title: How to Use the Relational Operators
pagenum: 66; title: How to Use the Logical Operators
pagenum: 68; title: How to Compare Strings
pagenum: 70; title: How to Code the Selection Structure
pagenum: 72; title: How to Code if Statements
pagenum: 72; title: More Examples of if Statements
pagenum: 74; title: How to Code Nested if Statements
pagenum: 76; title: How to Use Pseudocode to Plan if Statements
pagenum: 78; title: Two Illustrative Programs
pagenum: 80; title: The Miles Per Gallon Program
pagenum: 80; title: The Invoice Program
pagenum: 82; title: How to Use the Iteration Structure
pagenum: 84; title: How to Code while Statements
pagenum: 84; title: How to Code for Statements
pagenum: 86; title: How to Code break and continue Statements
pagenum: 88; title: More Examples of Loops
pagenum: 90; title: How to Use Pseudocode to Plan a Program
pagenum: 92; title: Two Illustrative Programs
pagenum: 94; title: The Test Scores Program
pagenum: 94; title: The Future Value Program
pagenum: 96; label: Chapter 4
title: How to Define and Use Functions and Modules; title: How to Define and Use Functions
pagenum: 104; title: How to Define and Call a Function
pagenum: 104; title: How to Define and Call a main() Function
pagenum: 106; title: The Future Value Program with Functions
pagenum: 108; title: More Skills for Defining and Using Functions
pagenum: 110; title: How to Use Default Values for Arguments
pagenum: 110; title: How to Use Named Arguments
pagenum: 110; title: When and How to Use Local and Global Variables
pagenum: 112; title: How to Create and Use Modules
pagenum: 114; title: How to Create a Module
pagenum: 114; title: How to Document a Module
pagenum: 116; title: How to Import a Module
pagenum: 118; title: The Convert Temperatures Program
pagenum: 120; title: How to Use Standard Modules
pagenum: 122; title: How to Use the Random Module
pagenum: 122; title: The Guess the Number Game
pagenum: 124; title: How to Plan the Functions of a Program
pagenum: 126; title: How to Use a Hierarchy Chart
pagenum: 126; title: The Hierarchy Chart for the Pig Dice Game
pagenum: 128; title: The Pig Dice Game with Global Variables
pagenum: 130; title: The Pig Dice Game with Local Variables
pagenum: 134; label: Chapter 5
title: How to Test and Debug a Program; title: An Introduction to Testing and Debugging
pagenum: 142; title: The Three Types of Errors That Can Occur
pagenum: 142; title: Common Python Errors
pagenum: 144; title: Four Techniques for Testing and Debugging
pagenum: 146; title: How to Plan the Test Runs
pagenum: 146; title: A Simple Way to Trace Code Execution
pagenum: 148; title: How to Use Top-Down Coding and Testing to Simplify Debugging
pagenum: 150; title: How to Use the IDLE Shell to Test Functions
pagenum: 152; title: How to Use the IDLE Debugger
pagenum: 154; title: How to Set and Remove Breakpoints
pagenum: 154; title: How to Step Through the Code
pagenum: 156; title: How to View the Stack
pagenum: 158; label: Chapter 6
title: How to Work with Lists and Tuples; title: Basic Skills for Working with Lists
pagenum: 164; title: How to Create a List
pagenum: 164; title: How to Get and Set Items
pagenum: 164; title: How to Add and Remove Items
pagenum: 166; title: How to Process the Items in a List
pagenum: 168; title: How Lists are Passed to Functions
pagenum: 170; title: The Movie List Program
pagenum: 172; title: How to Work with a List of Lists
pagenum: 176; title: How to Create a List of Lists
pagenum: 176; title: How to Process the Items in a List of Lists
pagenum: 178; title: The Movie List 2D Program
pagenum: 178; title: More Skills for Working with Lists
pagenum: 182; title: How to Count, Reverse, and Sort the Items in a List
pagenum: 182; title: How to Use Other Functions with Lists
pagenum: 184; title: How to Copy, Slice, and Concatenate Lists
pagenum: 186; title: How to Work with Tuples
pagenum: 188; title: How to Create a Tuple
pagenum: 188; title: How to Get Items from a Tuple
pagenum: 188; title: The Number Crunching Program
pagenum: 190; label: Chapter 7
title: How to Work with File I/O; title: An Introduction to File I/O
pagenum: 196; title: How File I/O Works
pagenum: 196; title: How to Open and Close a File
pagenum: 198; title: How to Use Text Files
pagenum: 200; title: How to Write a Text File
pagenum: 200; title: How to Read a Text File
pagenum: 202; title: How to Work with a List in a Text File
pagenum: 204; title: The Movie List 1.0 Program
pagenum: 206; title: How to Use CSV Files
pagenum: 210; title: How to Write a CSV File
pagenum: 210; title: How to Read a CSV File
pagenum: 212; title: How to Modify the CSV Format
pagenum: 212; title: The Movie List 2.0 Program
pagenum: 214; title: How to Use Binary Files
pagenum: 218; title: How to Work with a Binary File
pagenum: 218; title: The Movie List 3.0 Program
pagenum: 220; label: Chapter 8
title: How to Handle Exceptions; title: How to Handle a Single Exception
pagenum: 226; title: How Exceptions Work
pagenum: 226; title: How to Use a try Statement to Handle One Type of Exception
pagenum: 228; title: The Total Calculator Program
pagenum: 230; title: How to Handle Multiple Exceptions
pagenum: 232; title: How to Use a try Statement to Handle Multiple Exceptions
pagenum: 232; title: How to Get the Information from an Exception Object
pagenum: 234; title: The Movie List 2.0 Program
pagenum: 236; title: Two More Skills
pagenum: 240; title: How to Use a finally Clause
pagenum: 240; title: How to Raise an Exception
pagenum: 242; label: Section 2
title: Other Concepts and Skills; label: Chapter 9
title: How to Work with Numbers; title: Basic Skills for Working with Numbers
pagenum: 250; title: How Floating-Point Numbers Work
pagenum: 250; title: How to Use the Math Module
pagenum: 252; title: How to Format Numbers
pagenum: 254; title: How to Use the format() Method of a String
pagenum: 254; title: How to Use the Locale Module
pagenum: 256; title: How to Fix Rounding Errors
pagenum: 258; title: How to Work with Decimal Numbers
pagenum: 260; title: How to Use the Decimal Module
pagenum: 260; title: The Invoice Program with Decimal Numbers
pagenum: 262; title: The Future Value Program with Decimal Numbers
pagenum: 264; label: Chapter 10
title: How to Work with Strings; title: Basic Skills for Working with Strings
pagenum: 270; title: Unicode, Indexes, Slicing, Duplicating, and Multiline Strings
pagenum: 270; title: How to Search a String
pagenum: 272; title: How to Loop Through the Characters in a String
pagenum: 272; title: How to Use Basic String Methods
pagenum: 274; title: How to Find and Replace Parts of a String
pagenum: 276; title: The Create Account Program
pagenum: 278; title: How to Split and Join Strings
pagenum: 280; title: How to Split a String into a List of Strings
pagenum: 280; title: How to Join Strings
pagenum: 282; title: The Movie List 2D Program
pagenum: 284; title: The Word Counter Program
pagenum: 286; title: The Hangman Game
pagenum: 288; title: The User Interface
pagenum: 288; title: The Hierarchy Chart
pagenum: 288; title: The Wordlist Module
pagenum: 290; title: The Hangman Module
pagenum: 290; label: Chapter 11
title: How to Work with Dates and Times; title: How to Get Started with Dates and Times
pagenum: 298; title: How to Create Date, Time, and Datetime Objects
pagenum: 298; title: How to Create Datetime Objects by Parsing Strings
pagenum: 300; title: How to Format Dates and Times
pagenum: 302; title: How to Work with Spans of Time
pagenum: 304; title: The Invoice Due Date Program
pagenum: 306; title: The Timer Program
pagenum: 308; title: More Skills for Working with Dates and Times
pagenum: 310; title: How to Get Date and Time Parts
pagenum: 310; title: How to Compare Date/Time Objects
pagenum: 312; title: The Hotel Reservation Program
pagenum: 314; label: Chapter 12
title: How to Work with Dictionaries; title: How to Get Started with Dictionaries
pagenum: 322; title: How to Create a Dictionary
pagenum: 322; title: How to Get, Set, and Add Items
pagenum: 324; title: How to Delete Items
pagenum: 326; title: How to Loop Through Keys and Values
pagenum: 328; title: How to Convert Between Dictionaries and Lists
pagenum: 330; title: The Country Code Program
pagenum: 332; title: The Word Counter Program
pagenum: 336; title: More Skills for Working with Dictionaries
pagenum: 338; title: How to Use Dictionaries with Complex Objects as Values
pagenum: 338; title: The Book Catalog Program
pagenum: 340; label: Chapter 13
title: How to Work with Recursion and Algorithms; title: An Introduction to Recursion
pagenum: 348; title: How Recursion Works in Python
pagenum: 348; title: How to Use Recursion to Add a Range of Numbers
pagenum: 350; title: Some Common Recursive Algorithms
pagenum: 352; title: How to Compute the Factorial of a Number
pagenum: 352; title: How to Compute a Fibonacci Series
pagenum: 354; title: An Algorithm for Solving the Towers of Hanoi Puzzle
pagenum: 356; title: The Code for Solving the Towers of Hanoi Puzzle
pagenum: 358; label: Section 3
title: Object-oriented Programming; label: Chapter 14
title: How to Define and Use Your Own Classes; title: An Introduction to Classes and Objects
pagenum: 366; title: Two UML Diagrams for the Product Class
pagenum: 366; title: Code That Defines a Product Class
pagenum: 368; title: Code That Uses a Product Class
pagenum: 368; title: How to Create and Use Objects
pagenum: 370; title: How to Define a Class
pagenum: 372; title: How to Code a Constructor and Attributes
pagenum: 372; title: How to Code Methods
pagenum: 374; title: The Product Viewer 1.0 Program
pagenum: 376; title: How to Work with Object Composition
pagenum: 380; title: How Object Composition Works
pagenum: 380; title: The Die and Dice Classes
pagenum: 380; title: The Dice Roller 1.0 Program
pagenum: 382; title: How to Work with Encapsulation
pagenum: 384; title: How Object Encapsulation Works
pagenum: 384; title: How to Hide Attributes
pagenum: 386; title: How to Access Hidden Attributes with Methods
pagenum: 388; title: How to Access Hidden Attributes with Properties
pagenum: 390; title: The Die and Dice Classes with Encapsulation
pagenum: 392; title: The Product Class with Some Encapsulation
pagenum: 394; title: The Pig Dice Game
pagenum: 396; title: The Console
pagenum: 396; title: The Code
pagenum: 396; label: Chapter 15
title: How to Work with Inheritance; title: How to Work with Inheritance
pagenum: 406; title: How Inheritance Works
pagenum: 406; title: How to Define a Subclass
pagenum: 408; title: How Polymorphism Works
pagenum: 410; title: How to Check an Object's Type
pagenum: 412; title: The Product Viewer 2.0 Program
pagenum: 414; title: The Objects Module
pagenum: 414; title: The User Interface and product_viewer Module
pagenum: 416; title: How to Override Object Methods
pagenum: 418; title: How to Define a String Representation for an Object
pagenum: 418; title: How to Define an Iterator for an Object
pagenum: 420; title: The Die and Dice Classes
pagenum: 422; title: Two More Skills for the Road
pagenum: 424; title: How to Work with Custom Exceptions
pagenum: 424; title: When to Use Inheritance
pagenum: 426; label: Chapter 16
title: How to Design an Object-oriented Program; title: Techniques for Object-oriented Design
pagenum: 434; title: Five Steps for Designing an Object-oriented Program
pagenum: 434; title: How to Identify the Data Attributes
pagenum: 436; title: How to Subdivide the Data Attributes
pagenum: 438; title: How to Identify the Classes
pagenum: 440; title: How to Identify the Methods
pagenum: 442; title: How the Three-tier Architecture Works
pagenum: 444; title: The Shopping Cart Program
pagenum: 446; title: The Business Tier
pagenum: 446; title: The Database Tier
pagenum: 448; title: The Presentation Tier
pagenum: 450; label: Section 4
title: Database and GUI Programming; label: Chapter 17
title: How to Work with a Database; title: An Introduction to Relational Databases
pagenum: 462; title: How a Database Table is Organized
pagenum: 462; title: How the Tables in a Database are Related
pagenum: 464; title: How the Columns in a Table are Defined
pagenum: 466; title: How to Use the SQL Statements for Data Manipulation
pagenum: 468; title: How to Select Data from a Single Table
pagenum: 468; title: How to Select Data from Multiple Tables
pagenum: 470; title: How to Insert, Update, and Delete Rows
pagenum: 472; title: How to Use SQLite Manager to Work with a Database
pagenum: 474; title: How to Connect to a SQLite Database
pagenum: 474; title: How to Execute SQL Statements
pagenum: 476; title: How to Use Python to Work with a Database
pagenum: 478; title: How to Connect to a SQLite Database
pagenum: 478; title: How to Execute SELECT Statements
pagenum: 480; title: How to Get the Rows in a Result Set
pagenum: 482; title: How to Execute INSERT, UPDATE, and DELETE Statements
pagenum: 484; title: How to Test the Database Code
pagenum: 486; title: How to Handle Database Exceptions
pagenum: 486; title: The Movie List Program
pagenum: 488; title: The User Interface
pagenum: 488; title: The Business Tier
pagenum: 488; title: The Database Tier
pagenum: 490; title: The Presentation Tier
pagenum: 494; label: Chapter 18
title: How to Build a GUI Program; title: How to Create a GUI That Handles an Event
pagenum: 504; title: How to Display a Root Window
pagenum: 504; title: How to Work with Frames and Buttons
pagenum: 506; title: How to Handle a Button Click Event
pagenum: 508; title: More Skills for Working with Components
pagenum: 510; title: How to Work with Labels and Text Entry Fields
pagenum: 510; title: How to Lay Out Components in a Grid
pagenum: 512; title: How to Code a Class That Defines a Frame
pagenum: 514; title: The Future Value Program
pagenum: 516; title: The Business Module
pagenum: 516; title: The UI Module
pagenum: 516; label: Appendix A
title: How to Set Up Windows for This Book; title: How to Install the Source Code for This Book
pagenum: 524; title: How to Install Python and IDLE
pagenum: 526; title: How to Install Firefox and SQLite Manager
pagenum: 528; title: How to Verify That the Database is Installed Correctly
pagenum: 530; label: Appendix B
title: How to Set Up Mac OS X for This Book; title: How to Install the Source Code for This Book
pagenum: 534; title: How to Install Python and IDLE
pagenum: 536; title: How to Verify That Python and IDLE Are Working Correctly
pagenum: 538; title: How to Install Firefox and SQLite Manager
pagenum: 540; title: How to Verify That the Database is Installed Correctly
pagenum: 542