Cover....1
Half Title....2
Series Page....3
Title Page....4
Copyright Page....5
Dedication....6
Contents....8
Preface....12
CHAPTER 1: Python as a Powerful Calculator....22
1.1. BODMAS....22
1.2. FRACTIONS: SYMBOLIC COMPUTATION....23
1.3. POWERS (EXPONENTIATION) AND ROOTS....24
1.4. THE MATH LIBRARY (MODULE)....25
CHAPTER 2: Simple Programming with Python....28
2.1. LISTS, TUPLES, SETS AND DICTIONARIES ....28
2.2. DEFINING FUNCTIONS (PROGRAMMING)....31
2.3. FOR AND WHILE LOOPS....32
2.4. CONDITIONAL STATEMENTS, IF, ELIF, ELSE ....35
CHAPTER 3: The Turtle Library....38
3.1. THE CANTOR SET FRACTAL....39
3.2. THE KOCH SNOWFLAKE....40
3.3. A BIFURCATING TREE....41
3.4. THE SIERPINSKI TRIANGLE....42
CHAPTER 4: NumPy and MatPlotLib....45
4.1. NUMERICAL PYTHON (NUMPY)....45
4.2. MATPLOTLIB....47
4.3. SCATTER PLOTS....49
4.4. SURFACE PLOTS....50
CHAPTER 5: Google Colab, SymPy and GitHub ....53
5.1. GOOGLE COLAB....53
5.2. FORMATTING NOTEBOOKS....54
5.3. SYMBOLIC PYTHON (SYMPY)....56
5.4. GITHUB....58
CHAPTER 6: Python for Mathematics....61
6.1. BASIC ALGEBRA....61
6.2. SOLVING EQUATIONS....62
6.3. FUNCTIONS (MATHEMATICS)....64
6.4. DIFFERENTIATION AND INTEGRATION (CALCULUS)....67
CHAPTER 7: Introduction to Cryptography....72
7.1. THE CAESAR CIPHER....73
7.2. THE XOR CIPHER....74
7.3. THE RIVEST-SHAMIR-ADLEMAN (RSA) CRYPTOSYSTEM....75
7.4. SIMPLE RSA ALGORITHM EXAMPLE....76
CHAPTER 8: An Introduction to Artificial Intelligence....80
8.1. ARTIFICIAL NEURAL NETWORKS....81
8.2. THE AND/OR AND XOR GATE ANNS....82
8.3. THE BACKPROPAGATION ALGORITHM....84
8.4. BOSTON HOUSING DATA....86
CHAPTER 9: An Introduction to Data Science....89
9.1. INTRODUCTION TO PANDAS....89
9.2. LOAD, CLEAN AND PREPROCESS THE DATA ....92
9.3. EXPLORING THE DATA....94
9.4. VIOLIN, SCATTER AND HEXAGONAL BIN PLOTS ....95
CHAPTER 10: An Introduction to Object Oriented Programming....100
10.1. CLASSES AND OBJECTS....101
10.2. ENCAPSULATION....102
10.3. INHERITANCE....103
10.4. POLYMORPHISM....104
Index....110
A Simple Introduction to Python is aimed at pre-university students and complete novices to programming. The whole book has been created using Jupyter notebooks. After introducing Python as a powerful calculator, simple programming constructs are covered, and the NumPy, MatPlotLib and SymPy modules (libraries) are introduced. Python is then used for Mathematics, Cryptography, Artificial Intelligence, Data Science and Object Oriented Programming.The reader is shown how to program using the integrated development environments: Python IDLE, Spyder, Jupyter notebooks, and through cloud computing with Google Colab.