21 KiB
21 KiB
Table of Contents
The materials are designed to resemble an interactive book.
It is recommended to follow the installation instructions in the README.md file and work through the content on one's own computer.
If this is not possible,
the files can be viewed in a web browser
either statically (i.e., read-only) on nbviewer
or interactively (i.e., code can be executed) on Binder
.
- Chapter 0: Introduction
- content
(Python's History & Background;
Open-source & Communities;
JupyterLab;
Programming vs. Computer Science;
Learning Tips) - exercises
(Mastering Markdown) - review questions

- content
- Part A: Expressing Logic
- Chapter 1: Elements of a Program
- content
(A first Example: Averaging Even Numbers;
Operators;
Objects & Data Types;
Errors) - exercises
(Printing Output) - exercises
(Simple for-loops) - content
(Memory in Detail;
Variables & References;
Mutability;
Expressions & Statements) - exercises
(Python as a Calculator) - summary

- review questions

- further resources

- content
- Chapter 2: Functions & Modularization
- content
(Built-in Functions & Constructors;
Function Definitions;
Function Calls & Scoping Rules;
Positional vs. Keyword Arguments;
Modularization) - exercises
(Volume of a Sphere) - content
(Standard Library: math&randomModules; Third-party Packages:numpyLibrary; Writing one's own Modules) - summary

- review questions

- content
- Chapter 3: Conditionals & Exceptions
- content
(Boolean Expressions;
Relational Operators;
Logical Operators;
ifstatement; Exception Handling) - exercises
(Discounting Customer Orders) - exercises
(Fizz Buzz) - summary

- review questions

- content
- Chapter 4: Recursion & Looping
- content
(Recursion;
Examples: Factorial, Euclid's Algorithm, & Fibonacci;
Duck Typing;
Type Casting & Checking;
Input Validation) - exercises
(Towers of Hanoi) - content
(Looping with while&for; Examples: Collatz Conjecture, Factorial, Euclid's Algorithm, & Fibonacci; Containers vs. Iterables) - content
(Customizing Loops with breakandcontinue; Indefinite Loops) - exercises
(Throwing Dice) - summary

- review questions

- content
- Chapter 1: Elements of a Program
- Part B: Managing Data and Memory
- Chapter 5: Numbers & Bits
- content
(intType; Binary & Hexadecimal Representations; Bit Arithmetic; Bitwise Operators) - content
(floatType; Floating-point Standard; Special Values; Imprecision; Binary & Hexadecimal Representations) - content
(complexType; Numerical Tower; Duck vs. Goose Typing) - appendix
(DecimalType;FractionType) - summary

- review questions

- further resources

- content
- Chapter 6: Text & Bytes
- content
(strType; Reading Files; Sequences; Indexing & Slicing; String Methods & Operations; String Interpolation) - exercises
(Detecting Palindromes) - content
(Special Characters;
ASCII & Unicode;
Multi-line Strings;
bytesType; Character Encodings) - summary

- review questions

- further resources

- content
- Chapter 7: Sequential Data
- content
(Collections vs. Sequences;
ABCs: Container,Iterable,Sized, &Reversible) - content
(listType; Indexing & Slicing; Shallow vs. Deep Copies; List Methods & Operations) - exercises
(Working with Lists) - content
(Modifiers vs. Pure Functions;
tupleType; Packing & Unpacking;*argsin Function Definitions) - exercises
(Packing & Unpacking with Functions) - appendix
(namedtupleType) - summary

- review questions

- content
- Chapter 8: Map, Filter, & Reduce
- Chapter 5: Numbers & Bits