Python Fundamentals
Python Fundamentals is a beginner-level computer programming course suitable for casual students. In Python Fundamentals, students will go from having little to zero programming experience to being comfortable with writing basic programs in Python.
This course consists of 7 sessions and students are encouraged to take each session in consecutive order. A wide array of topics universal to computer programming as a whole will be introduced using Python for learning purposes.
Registration
Registration is currently closed as maximum capacity has been reached.
Notice: I am retired from teaching and mentoring, and this course is no longer active.
General Information
- This course is beginner-friendly. No prerequisite knowledge is required.
- There are no assignments or labs, but optional projects are available.
- Sessions consist of a mixture of lectures, whiteboards, Q+A, and demonstrations.
- Sessions can be expected to last 45-70 minutes each and are scheduled by appointment through Calendly (no Calendly registration required).
- Additional tutoring and help can be scheduled by appointment.
Full Course Overview
Session 1: Introduction, Data Types I
- The big picture idea of computer programming
- Basic comments in Python
- Numerical data types and basic operations
- Sequential data types and basic operations
- String formatting
Session 2: Data Types II
- Primitive vs composite data types
- Set data types and basic operations
- Mapping data types and basic operations
- None data types and basic operations
Session 3: Boolean Logic
- Memberships
- Identities
- Comparisons
- Propositional logic
- Truth tables
- Logic gates
Session 4: Control Flow Structures
- Conditionals
- Loops
- Exception handling
Session 5: Functions
- Function definitions
- Function annotations
- Parameters and arguments
- Local vs global scopes
Session 6: Object-Oriented Programming
- Objects and classes
- Instantiation
- Methods
- Constructors
- Attributes
Session 7: Libraries, Modules, and Project Structure
- Libraries
- Modules
- Project structure
- Style guides
- Future guidance
Optional Projects
Create Your Own Adventure
This is a project that is ideally to be done after the completion of “Session 4: Control Flow Structures.” Synthesize the topics learned in Session 4 and earlier in order to create a text-based “Create Your own Adventure” game. You can be as creative as you’d like – this is your game! Your program should at minimum synthesize the following topics:
- Input and output
- Propositional logic
- Conditionals
Four-Function Calculator
This is a project that is ideally to be done after the completion of “Session 5: Functions.” Create a four-function calculator. Your program should at minimum synthesize the following topics:
- Input and output
- Conditionals
- Functions
Text-Based RPG
This is a project that is ideally to be done after the completion of “Session 7: Libraries, Modules, and Project Structure.” Create a text-based RPG with inventories, player information, quests, and more. You can be as creative as you’d like. Your program should at minimum synthesize the following topics:
- Loops
- Functions
- Object-Oriented Programming