Course Activities
- Quizzes: 31
- Assignments: 85
- Projects: 2
- Exams: 2
Part 1 - Introduction to Python 3 Training
Lesson 1: Python Basics (Quizzes: 1, Assignments: 5)
- Getting Familiar with the Terminal
- Running Python
- Running a Python File
- Literals, Comments, and Data Types
- Variables
- Constants and Deleting Variables
- Writing a Python Module
- print() Function
- Collecting User Input
- Reading from and Writing to Files
Lesson 2: Functions and Modules (Quizzes: 1, Assignments: 2)
- Defining Functions
- Variable Scope
- Global Variables
- Function Parameters
- Default Values
- Returning Values
- Importing Modules
- Methods vs. Functions
Lesson 3: Math (Quizzes: 1, Assignments: 3)
- Arithmetic Operators
- Assignment Operators
- Precedence of Operations
- Built-in Math Functions
- The math Module
- The random Module
Lesson 4: Python Strings (Quizzes: 1, Assignments: 5)
- Quotation Marks and Special Characters
- String Indexing
- Slicing Strings
- Concatenation and Repetition
- Combining Concatenation and Repetition
- Python Strings are Immutable
- Common String Methods
- String Formatting
- Formatted String Literals (f-strings)
- Built-in String Functions
Lesson 5: Iterables: Sequences, Dictionaries, and Sets (Quizzes: 1, Assignments: 4)
- Definitions
- Sequences
- Lists
- Sequences and Random
- Tuples
- Ranges
- Converting Sequences to Lists
- Indexing
- Slicing
- min(), max(), and sum()
- Converting between Sequences and Strings
- Unpacking Sequences
- Dictionaries
- The len() Function
- Sets
- *args and **kwargs
Lesson 6: Virtual Environments, Packages, and pip (Quizzes: 1, Assignments: 2)
Lesson 7: Flow Control (Quizzes: 1, Assignments: 3)
- Conditional Statements
- Compound Conditions
- The is and is not Operators
- all() and any() and the Ternary Operator
- In Between
- Loops in Python
- break and continue
- Looping through Lines in a File
- The else Clause in Loops
- The enumerate() Function
- Generators
- List Comprehensions
Lesson 8: Exception Handling (Quizzes: 1, Assignments: 2)
- Exception Basics
- Generic Exceptions
- The else and finally Clauses
- Using Exceptions for Flow Control
- Raising Your Own Exceptions
Lesson 9: Python Dates and Times (Quizzes: 1, Assignments: 2)
- Understanding Time
- The time Module
- Time Structures
- Times as Strings
- Time and Formatted Strings
- Pausing Execution with time.sleep()
- The datetime Module
- datetime.datetime Objects
- datetime.timedelta Objects
Lesson 10: File Processing (Quizzes: 1, Assignments: 4)
- Paths
- The pathlib Module
- Opening Files
- Writing to Files
- Path Methods for Reading and Writing Files
- Making Directories
- Deleting Files and Directories
- Renaming Files and Directories
- The os Module
- A Better Way to Open Files
Lesson 11: PEP8 and Pylint (Quizzes: 1, Assignments: 0)
Part 2 - Advanced Python 3 Training
Lesson 1: Advanced Python Concepts (Quizzes: 1, Assignments: 5)
- Lambda Functions
- Advanced List Comprehensions
- Collections Module
- Counters
- Mapping and Filtering
- Mutable and Immutable Built-in Objects
- Sorting
- Sorting Sequences of Sequences
- Creating a Dictionary from Two Sequences
- Unpacking Sequences in Function Calls
- Modules and Packages
Lesson 2: Regular Expressions (Quizzes: 1, Assignments: 1)
- Regular Expression Tester
- Regular Expression Syntax
- Python’s Handling of Regular Expressions
Lesson 3: Working with Data (Quizzes: 1, Assignments: 6)
- Virtual Environment
- Relational Databases
- Passing Parameters
- SQLite
- SQLite Database in Memory
- Drivers for Other Databases
- CSV
- Creating a New CSV File
- Getting Data from the Web
- XML
- JSON
Lesson 4: Testing and Debugging (Quizzes: 1, Assignments: 2)
- Testing for Performance
- The unittest Module
- Special unittest.TestCase Methods
Lesson 5: Classes and Objects (Quizzes: 1, Assignments: 5)
- Attributes
- Behaviors
- Classes vs. Objects
- Attributes and Methods
- Private Attributes
- Properties
- Objects that Track their Own History
- Documenting Classes
- Inheritance
- Extending a Class Method
- Static Methods
- Class Attributes and Methods
- Abstract Classes and Methods
- Understanding Decorators
Part 3 - Python Data Analysis with JupyterLab Training
Lesson 1: JupyterLab (Quizzes: 1, Assignments: 5)
- Jupyter Notebook Modes
- Markdown
- Magic Commands
- Getting Help
Lesson 2: NumPy (Quizzes: 1, Assignments: 3)
- NumPy Arrays
- Multi-dimensional Arrays
- More on Arrays
- Using Boolean Arrays to Get New Arrays
- Random Number Generation
- Exploring NumPy Further
Lesson 3: pandas (Quizzes: 1, Assignments: 5, Projects: 1)
- Getting Started with pandas
- Introduction to Series
- np.nan
- Accessing Elements in a Series
- Series Alignment
- Comparing One Series with Another
- Element-wise Operations and the apply() Method
- Series: A More Practical Example
- Introduction to DataFrames
- Creating a DataFrame using Existing Series as Rows
- Creating a DataFrame using Existing Series as Columns
- Creating a DataFrame from a CSV
- Exploring a DataFrame
- Changing Values
- Getting Rows
- Combining Row and Column Selection
- Boolean Selection
- Pivoting DataFrames
- Be careful using properties!
- Plotting with matplotlib
- Other Kinds of Plots
Python Programmer Final Exam
Part 4 - Introduction to C++ Programming
Lesson 1: Getting Started with Modern C++ (Quizzes: 1, Assignments: 1)
- History and Evolution of C++
- Procedural and Object-Oriented Features
- Program Structure Basics
Lesson 2: Core Syntax and Control Flow (Quizzes: 1, Assignments: 1)
- Variables, Constants, and Type Deduction
- Operators and Expressions
- Basic Input and Output
- Modern Output: std::format
- Conditionals: if and switch
- Loops: for, while, do-while
Lesson 3: Functions and Functional Features (Quizzes: 1, Assignments: 1)
- Defining and Using Functions
- Overloading and Default Parameters
- Scope and Lifetime
- Lambdas and Generics
- consteval and constexpr
- Error Handling Techniques
Lesson 4: Arrays and Strings (Quizzes: 1, Assignments: 1)
- C-style Arrays and Strings Overview
- Modern Arrays: std::array
- Strings with std::string and std::string_view
- String Formatting with std::format
Lesson 5: Memory and Pointers (Quizzes: 1, Assignments: 1)
- Basics of Pointers and Addresses
- Pointer Arithmetic
- Dynamic Memory: new and delete
- Smart Pointers: unique_ptr, shared_ptr, weak_ptr
- Pointers vs. References
Lesson 6: Structured Programming (Quizzes: 1, Assignments: 1)
- User-Defined Types: struct
- typedef and enum
- Passing Structs to Functions
Lesson 7: Standard Data Structures (Quizzes: 1, Assignments: 1)
- Vectors and Lists
- Stacks, Queues, and Deques
- Maps and Sets
- Unordered Containers
- Common Algorithms: sort, find, Ranges
Lesson 8: Object-Oriented Programming (Quizzes: 1, Assignments: 1)
- OOP Principles: Encapsulation, Inheritance, Polymorphism
- Class Definitions
- Member Variables and Functions
- Constructors and Destructors
- Access Control
- Function and Operator Overloading
Lesson 9: Inheritance and Polymorphism (Quizzes: 1, Assignments: 1)
- Base and Derived Classes
- Inheritance Types
- Virtual Functions and Dynamic Dispatch
- Abstract Classes and Interfaces
Lesson 10: File I/O (Quizzes: 1, Assignments: 1)
- File Streams and Concepts
- Reading Files: ifstream
- Writing Files: ofstream
- File Modes and Error Handling
- Working with Structured Data Files
Part 5 - AI-Assisted Python and C++ Development
Lesson 1: Overview of Artificial Intelligence and Large Language Models (Quizzes: 1, Assignments: 1)
- Overview of Artificial Intelligence and Large Language Models
- Large Language Models: Challenges and Risks
- ChatGPT Overview and Use Cases
- How ChatGPT Helps Developers Write Code
- Prepping a ChatGPT Thread
- The Role of AI in Programming
- Getting Started with ChatGPT
Lesson 2: AI-Assisted Python (Assignments: 5)
- Setting Up and Using Google Colab
- Writing a Python Module
- Debugging and Optimizing Python
- Making Use of an API
- Creating a Python Script with File I/O
- Recommended Practice
Lesson 3: AI-Assisted C++ (Quizzes: 1, Assignments: 5, Projects: 1)
- Writing a C++ Program with AI Assistance
- Debugging and Optimizing C++
- Using AI to Understand and Explore C++ Code
- Creating a C++ Program with File I/O
- Recommended Practice
C++ Final Exam