Mô tả

Learn Object Oriented Programming (OOP) in Python with mini projects, hands-on practice, and carefully designed visual explanations. Understand how the elements and abstract concepts of OOP work behind the scenes. Apply your knowledge to new scenarios.


Object Oriented Programming is Your Next Step Into the In-demand and Powerful World of Python

  • Create and work with classes and instances to write Python programs.

  • Understand how they work behind the scenes.

  • Learn when to use instance attributes vs. class attributes.

  • Implement and call methods. Understand their purpose.

  • Take advantage of the power of inheritance to avoid code repetition.

  • Use key concepts like Docstrings and Special methods in your programs.


Student Reviews

It's a wonderful course! It's very methodical and detail. It helps you build a very strong foundation in OOP in python. Highly recommended for beginners. Xin Chu

Even total noob will understand the OOP here :) Łukasz Bryzek

I love how the instructor explains things in simple language and relates it to everyday life. I actually understand! I'm just at the beginning of the course and am excited about continuing. Donny Lobree

I would strongly recommend this course if you are new to programming and want to master the basics of OOP. Demayne Collins

The learning sticks. The coverage of Python classes here, for me, has been better than how this topic has been covered in a couple of other Python classes I have from more well-established Python instructors. Hats of to the instructor for putting this together. Thomas P

Perfect for persons without any clue in oop! Patrick Onegin


Course Updates

The course is frequently updated with new lectures, projects, and resources:

October 2023 - NEW Updated coding exercises.

November 2022 - NEW New Mini Project (Cash Register Methods).

November 2022 - NEW Updated quizzes and mini projects.

November 2022 - NEW Updated quizzes with new questions and answers.

November 2022 - NEW The special methods __iter__() and __next__().

November 2022 - NEW Why cloned tuples have the same id.

November 2022 - NEW How to delete an instance attribute.

November 2022 - NEW How to iterate over instances.

July 2022 - NEW New Project: Dice Game

May 2022 - NEW! Updated Section 1

Nov 2021 - NEW Updated quizzes with detailed explanations for the answers.

Sept 2021 - NEW Updated Tic-Tac-Toe Project (new lectures and code).

Jun 2021 - NEW Updated Python files and quizzes.

Jun 2021 - NEW War Card Game Project.

Jun 2021 - NEW!Complete Course Update (New Lectures and Resources).

Apr 2021 - NEW!Final Project: Implementing a Data Structure with OOP (a Linked List).

Apr 2021 - NEW Q&A Featured Questions.

Apr 2021 - NEW Downloadable PDF OOP Poster, notes format, and code format.

Nov 2020 - NEW  Tic-Tac-Toe Project.

Oct 2020 - NEW Updated quizzes, mini projects, and first two sections.

Oct 2020 - NEW Badges to collect at the end of each section.

Oct 2020 - NEW Articles "“What is None?” and "Method Chaining"

Oct 2020 - NEW Section quizzes.

Oct 2020 - NEW PDF study guide with questions to help you review.

Nov 2019 - NEW Complete course update with new video lectures and downloadable resources.

Sept 2019 - NEW Updated tips handout, content handout, and course wallpapers.

Sept 2019 - NEW Downloadable Python files for each section.

Sept 2019 - NEW PDF Handouts for each section.

July 2019 - NEW Article "Inheritance in Context".

July 2019 - NEW Solutions for the Coding Exercises.

July 2019 - NEW New mini projects for each section.


Add New Python Skills To Your Resume

Python is currently one of the most popular programming languages and its popularity continues rising every year. It is used for real-world applications in diverse areas such as Data Science, Game Development, Web Development, Machine Learning, Artificial Intelligence, and many more. Learning Object Oriented Programming in Python is your next step into the powerful world of computer science.

Object Oriented Programming is key if you wish to expand your computer science skills and create maintainable and scalable programs. You will need to learn these concepts to implement data structures like trees, graphs, and linked lists. It's also key for game development, GUI programming, artificial intelligence, and many other areas. The concepts and techniques that you will learn in this course are easily transferable to other programming languages like Java, JavaScript, and many more.


Content & Overview

With high-quality video lectures that include graphics and animations, you will learn and work with these concepts:

  • Classes

  • Instances

  • Instance Attributes

  • Class Attributes

  • Methods

  • The 'self' parameter

  • Inheritance

  • Docstrings

  • Special Methods

  • and more.

You will build a Tic-Tac-Toe game and a text-based version of the War Card Game following the principles of Object Oriented Programming.


Learning Material & Resources

Throughout the course, you will find these resources:

  • Video lectures: carefully designed graphics, animations, and explanations.

  • Dice Game: you will build an interactive dice game using the principles of Object-Oriented Programming.

  • Tic-Tac-Toe Game: you will build a working tic-tac-toe game using the principles of Object Oriented Programming.

  • War Card Game Project: you will create a text-based version of the War Card Game using the principles of Object Oriented Programming.

  • Final Project: you will implement a data structure in Python (a Linked List) with step-by-step explanations, practical exercises, and featured questions.

  • Mini Projects: you will apply your knowledge at the end of each section with mini projects.

  • Solutions to the Mini Projects: each mini project has its corresponding solution.

  • PDF Handouts: unique study guides with graphical summaries of the key aspects of each section.

  • Coding Exercises: practice key concepts with the coding exercises.

  • Solutions of the Coding Exercises: each coding exercise has its corresponding solution.

  • Quizzes: check your knowledge interactively after each lecture with short quizzes that have unlimited attempts.

  • Python Files: download the code used for each section as a compressed (.zip) file with individual python (.py) files.

  • Articles: read complementary articles to expand your knowledge.

  • Course Poster: track your progress with a poster that you can cross out as you complete each section.

  • Cornell Notes Format: take notes with this PDF format and follow the Cornell Note-taking System.

  • Code Notebook Format: download a PDF format to write your code manually if you prefer, and add your notes and comments.

  • Discussion Forums: ask questions on the discussion forums and discuss interesting topics with your peers.


Why is this course unique?

This course is unique because of its emphasis on providing visual and detailed explanations of how the elements of Object Oriented Programming (OOP) work behind the scenes, so you will not only learn how to use them in Python, you will actually understand what each line of code does behind the scenes.

During the course, you will apply your knowledge by completing mini projects that simulate simplified real-world scenarios such as fixing classes in a bakery system, representing bacteria for educational software using instance attributes, implementing inheritance for a videogame, completing the system of a vending machine, and many more. Each mini project includes its corresponding solution.

Unique study materials complement the course experience. You will find PDF handouts specifically designed for the course with a graphical summary of the key aspects of each section.

You will solve coding exercises directly on the browser and you will receive instant feedback for your submission.

You will check your knowledge with short Quizzes after each main lecture. The Quizzes provide instant feedback, so you can see the correct answer immediately. The quiz questions were designed to make you think more deeply about the topics presented.

You will receive a certificate of completion that you can add to your social media profiles to showcase your new skills.

You will also have lifetime access to the course and to all the new additions.


You are very welcome to watch the preview lectures and check out the full course curriculum.

If you are looking for an engaging, visual, and practical course, you've found it.

Add "Object Oriented Programming in Python" to your resume and showcase your new skills!

Bạn sẽ học được gì

The principles of Object Oriented Programming (OOP) using Python.

How the elements of Object Oriented Programming work behind the scenes.

Understand how classes work and how you can create instances from classes.

Implement and call methods. Understand their purpose within classes.

Define instance attributes and class attributes. Learn their differences.

Use 'self' to refer to instances. Learn how it works behind the scenes.

Work with inheritance to reuse code, improve design, and avoid repetition.

Practice key aspects of OOP such as Docstrings and Special Methods.

Yêu cầu

  • Basic Python and programming knowledge (data types, variables, conditionals, loops, and functions).
  • Basic knowledge of lists, tuples, and dictionaries is required to complete the mini projects.
  • Python 3 and PyCharm, IDLE or any other Python IDE of your choice. PyCharm is used during the video lectures.
  • Coding exercises can be submitted directly in the browser.

Nội dung khoá học

21 sections

Welcome to the Course: Python OOP Object Oriented Programming for Beginners

4 lectures
Welcome to the Course - Let's Begin
00:26
Important Course Information
03:21
Introduce Yourself and Share your Goals
00:20
Downloadable Resources
01:27

Introduction to Object Oriented Programming (OOP) and Key Concepts

7 lectures
Welcome to this Section | Introduction to Object-Oriented Programming (OOP)
00:45
Section Topics
00:05
What is Object-Oriented Programming (OOP)?
03:39
Advantages of Object Oriented Programming
04:52
Important Terminology and PDF Glossary
00:28
Introduction to Object-Oriented Programming in Python
6 questions
Discussion Topic: Share your Thoughts
00:06

Classes: The Blueprints of Object Oriented Programming (OOP)

14 lectures
Welcome to this Section | Introduction to Classes
01:10
Section Topics
00:09
Section Resources
00:13
Introduction to Classes: The Building Blocks of OOP
04:06
Class Naming Conventions
00:13
How to Identify Classes in a Problem Description
08:21
Classes | Concept and Analysis
3 questions
Classes in Python: Initial Syntax
06:34
The object Parameter in Python 3 and Python 2
00:27
Introduction to Classes | Python Syntax
3 questions
Example: Identify Classes in a Problem Description
03:43
Classes in Real-World Scenarios (Mini Project)
1 question
Classes in Real-World Scenarios (Mini Project) - PDF Version for the Mobile App
00:24
Discussion Topic: Share your Thoughts
00:07

Instances and Instance Attributes: Use your Classes to Create Instances

33 lectures
Welcome to this Section | Instances and Instance Attributes
00:54
Section Topics
00:15
Section Resources
00:13
Introduction to Instances and Instance Attributes
05:13
Instances and Instance Attributes | Concept
2 questions
Instance Attributes and __init__()
06:43
__init__(): Common Mistakes
00:24
Parameters in the Python Style Guide (PEP 8)
00:38
Introduction to self
05:29
Coding Session: Define Instance Attributes
04:45
Instances and Instance Attributes (Syntax)
6 questions
How to Create Instances
08:49
Why do we skip self when we create an instance?
00:56
Create instances (Practice)
3 questions
Create an Instance in Python
1 question
What is None?
01:07
How to Access Instance Attributes
04:02
How to Access Instance Attributes
3 questions
Coding Session: Access Instance Attributes
03:48
Default Arguments
07:05
Default Arguments: PEP 8 Style Guide
00:20
Default Arguments
3 questions
How to Iterate over Sequences of Instances
01:45
How to Update Instance Attributes
06:32
Coding Session: Modify/Update Instance Attributes
02:08
How to Update Instance Attributes
3 questions
How to Delete an Instance Attribute
01:36
Bacteria and Instances (Practice)
1 question
Bacteria and Instances (Practice) - PDF Version for the Mobile App
00:24
Section Quiz | Check Your Knowledge
4 questions
Bakery: Fix the Classes (Mini Project)
1 question
Bakery: Fix the Classes (Mini Project) - PDF Version for the Mobile App
00:24
Discussion Topic: Share your Thoughts
00:07

Class Attributes: Define Attributes Shared Across Instances

22 lectures
Welcome to this Section | Class Attributes
00:49
Section Topics
00:08
Section Resources
00:13
Introduction to Class Attributes
01:18
Class Attributes vs. Instance Attributes
00:19
Class Attributes | Concept
1 question
How to Define Class Attributes
01:05
Coding Session: Define Class Attributes
03:30
Class Attributes | Syntax
3 questions
Class Attributes in Python
1 question
How to Access Class Attributes
05:59
Coding Session: Access Class Attributes
03:11
How to Access Class Attributes
2 questions
Getting a Class Attribute
1 question
How to Modify Class Attributes
08:20
Coding Session: Modify Class Attributes
02:39
How to Modify Class Attributes
2 questions
Updating Class Attributes
1 question
Section Quiz | Check Your Knowledge
5 questions
Employees and Class Attributes (Mini Project)
1 question
Employees and Class Attributes (Mini Project) - PDF Version for the Mobile App
00:24
Discussion Topic: Share your Thoughts
00:07

Encapsulation and Abstraction: Key Principles of Object-Oriented Programming

18 lectures
Welcome to this Section | Encapsulation and Abstraction
01:10
Section Topics
00:10
Section Resources
00:13
Introduction to Encapsulation
03:05
Introduction to Abstraction
04:53
Encapsulation and Abstraction
1 question
Public vs. Non-Public Attributes in Python
09:51
Coding Session 1: Public vs. Non-Public Attributes
03:52
Coding Session 2: Public vs. Non-Public Attributes
04:38
Public vs. Non-Public Attributes
4 questions
"Private" Variables - Helpful Article
00:06
Access Modifiers in other Programming Languages
00:39
Name Mangling
07:09
Name Mangling
3 questions
Section Quiz | Check Your Knowledge
4 questions
Encapsulation and Abstraction (Mini Project)
2 questions
Encapsulation and Abstraction (Mini Project) - PDF Version for the Mobile App
00:24
Discussion Topic: Share your Thoughts
00:08

Properties, Getters, and Setters in Python | Learn to use @property

22 lectures
Welcome to this Section | Properties, Getters, and Setters
01:18
Section Topics
00:14
Quick Tip: How to Leave or Update Your Review
00:16
Section Resources
00:13
Introduction to Getters
06:27
Introduction to Setters
07:14
Coding Session 1: Getters and Setters
04:15
Coding Session 2: Getters and Setters
04:39
Getters and Setters
4 questions
How to use Properties | The Pythonic Way
09:19
Coding Session: Properties
07:14
Properties | Initial Syntax
2 questions
The @property Decorator
09:16
What is a decorator?
00:28
Coding Session: Using @property
04:06
@property - The Three Methods
00:51
Properties | @property
3 questions
Tips for Getters, Setters, and Deleters
00:30
Section Quiz | Check Your Knowledge
4 questions
Add Properties to a Class (Mini Project)
2 questions
Add Properties to a Class (Mini Project) - PDF Version for the Mobile App
00:24
Discussion Topic: Share your Thoughts
00:10

Methods: Add Functionality to your Classes

24 lectures
Welcome to this Section | Methods
01:28
Section Topics
00:19
Section Resources
00:13
Introduction to Methods in Python
09:40
Coding Session: Methods
04:49
Methods | Concept and Syntax
4 questions
Guidelines for Writing Method Names
00:23
How to Call a Method
06:54
Coding Session: How to Call a Method
05:30
Alternative Syntax to Call a Method
01:07
Non-Public Methods and Name Mangling
00:16
How to Call a Method
4 questions
Calling a Method
1 question
Default Arguments
08:15
Coding Session: Default Arguments
03:54
How to Call a Method from Another Method
01:18
Coding Session: How to Call a Method from Another Method
03:48
Returning a Value from a Method
01:05
Defining and Calling a Method
1 question
Method Chaining in Python
02:34
Section Quiz | Check Your Knowledge
5 questions
Cash Register Methods (Mini Project)
1 question
Cash Register Methods (Mini Project) - PDF Version for the Mobile App
00:24
Discussion Topic: Share your Thoughts
00:08

Project: Build a Dice Game with Python OOP

14 lectures
Welcome to this project: Dice Game
00:53
Dice Game Description, Rules, and Logic
02:48
New OOP Concept: Aggregation
25:09
Aggregation vs. Composition
01:49
Game Requirements and Object-Oriented Analysis
19:46
Implementing the Die Class
09:42
Implementing the Player Class
17:20
Implementing the DiceGame Class (Part 1)
20:00
Implementing the DiceGame Class (Part 2)
10:04
Implementing Game Over
09:52
Final Steps: Completing the Game
03:11
Dice Game: Final Code
01:25
Challenges to Practice your OOP Skills
00:53
Discussion Topic: Share your Thoughts
00:08

Objects in Memory: Learn How Objects Work Behind the Scenes

21 lectures
Welcome to this Section | Objects in Memory
01:11
Section Topics
00:20
Section Resources
00:13
Python: Objects in Memory
08:22
Object vs. Instance
00:17
Built-in Data Types and Methods in Python
01:10
The id() Function in Python
04:22
Coding Session: the id() function
01:40
The id() function
2 questions
Introduction to the "is" Operator
06:41
Comparing Objects of User-Defined Classes with ==
01:13
Coding Session: The "is" operator
03:09
The "is" operator
3 questions
The "is" operator: Unexpected Results
07:47
Different Output?
00:24
Working with objects
10:21
Let's Check that Objects are Passed by Reference
00:35
Section Quiz | Check Your Knowledge
3 questions
Objects in Memory (Mini Project)
2 questions
Objects in Memory (Mini Project) - PDF Version for the Mobile App
00:24
Discussion Topic: Share your Thoughts
00:11

Aliasing, Mutation, and Cloning

21 lectures
Welcome to this Section | Aliasing, Mutation, Cloning
01:12
Section Topics
00:18
Section Resources
00:13
Introduction to Aliasing
04:54
Coding Session: Aliasing
06:25
Aliasing
2 questions
Introduction to Mutability and Immutability
04:52
Advantages and Disadvantages of Mutable and Immutable Data Types
10:27
Coding Session: Mutability and Immutability
03:16
Be Careful: Some Built-in Methods Can Cause Mutation
00:49
Common Bug: Be Careful with Mutable Data Types as Default Arguments
01:51
Important Tip: Immutable doesn't mean that its elements are immutable
00:46
Mutability
3 questions
Introduction to Cloning
05:31
Shallow vs. Deep Copies of an Object
02:38
Cloned Tuples Have the Same id - Why?
01:01
Cloning
2 questions
Section Quiz | Check Your Knowledge
4 questions
Fix the Bug Caused by Mutation (Mini Project)
2 questions
Fix the Bug Caused by Mutation (Mini Project) - PDF Version for the Mobile App
00:24
Discussion Topic: Share your Thoughts
00:09

Project: Build a Tic-Tac-Toe Game with OOP

21 lectures
Welcome to Tic-Tac-Toe (Game Preview)
03:01
The Move Class
08:15
Testing the Move Class
07:03
The Player Class: Attributes, Properties, and Get Move
10:57
The Player Class: Get Random Computer Move
06:37
Testing the Player Class
07:35
The Board Class: Create and Print the Board
12:47
The Board Class: Submit Move
05:59
The Board Class: Check if the Player Won the Game
11:27
Testing Check Game Over
09:56
Check Tie and Reset Board
03:58
Testing Check Tie and Reset Board
09:01
Tic-Tac-Toe Game Implementation
16:16
Playing and Testing our Tic-Tac-Toe Game
04:47
Tic-Tac-Toe Game Code
02:16
Challenge to Practice your OOP Skills
00:39
What is Object-Oriented Analysis and Design?
00:54
Section Quiz | Check Your Knowledge
4 questions
Analyze a Scenario: A To-Do List App (Mini Project)
1 question
Analyze a Scenario: A To-Do List App (Mini Project) - PDF Version for Mobile App
00:24
Discussion Topic: Share your Thoughts
00:07

Inheritance in Python (Attributes)

24 lectures
Welcome to this Section | Inheritance in Python (Attributes)
01:21
Section Topics
00:12
Section Resources
00:13
Introduction to Inheritance
07:28
Important Terminology and Tips
00:14
Inheritance in Context - Avoiding Code Repetition
02:01
Inheritance | Concept
5 questions
Inheritance in Python (Syntax)
03:30
Checking if a Class is a Subclass of another Class
00:17
How to Inherit Attributes with __init__()
10:00
Inheritance | Syntax
3 questions
super() to refer to the Superclass
00:40
Coding Session 1: Employee and Programmer
04:05
Coding Session 2: Character, Player, Enemy
08:41
Vehicle and Car Hierarchy
1 question
Multilevel Inheritance in Python
00:26
Multiple Inheritance in Python
00:42
From a Hierarchy to Python Code (Practice)
1 question
From a Hierarchy to Python Code (Practice) - PDF Version for the Mobile App
00:24
More Complex Pizza Hierarchy
1 question
Section Quiz | Check Your Knowledge
6 questions
Video Game Inheritance (Mini Project)
1 question
Video Game Inheritance (Mini Project) - PDF Version for the Mobile App
00:24
Discussion Topic: Share your Thoughts
00:07

Inheritance in Python | Methods

21 lectures
Welcome to this Section | Inheritance in Python (Methods)
01:38
Section Topics
00:17
Section Resources
00:13
Introduction to Method Inheritance
04:40
Method Inheritance | Theory
1 question
Inheritance in Python (Syntax) | Methods
06:46
How to Call a Method of the Superclass
00:29
Example of Method Inheritance
00:39
Method Inheritance | Syntax
2 questions
Calling a Method of the Superclass
1 question
Method Overriding
12:05
Coding Session: Method Overriding
05:12
Overriding vs. Overwriting
00:18
Method Overriding
2 questions
Bank Accounts and Method Overriding
1 question
Method Overloading in Python
00:55
Polymorphism in Python
01:33
Section Quiz | Check Your Knowledge
6 questions
Vending Machines and Method Inheritance (Mini Project)
1 question
Vending Machines and Inheritance (Mini Project) - PDF Version for the Mobile App
00:24
Discussion Topic: Share your Thoughts
00:07

Working with Multiple Files: Learn to Use Import Statements in Python

14 lectures
Welcome to this Section | Working with Multiple Files
01:01
Section Topics
00:11
Section Resources
00:13
Introduction to Import Statements
04:30
Syntax 1: How to Import all the Elements of a Module
07:37
Syntax 2: How to Import Individual Elements of a Module
03:52
Import Statements
3 questions
Wildcard Import Statements
03:07
Importing Modules and Elements with New Names
00:39
Types of Imports
01:12
Section Quiz | Check Your Knowledge
4 questions
Types of Import Statements (Mini Project)
1 question
Types of Import Statements (Mini Project) - PDF Version for the Mobile App
00:24
Discussion Topic: Share your Thoughts
00:08

Docstrings: Learn How to Document your Classes and Methods

18 lectures
Welcome to this Section | Docstrings
01:31
Section Topics
00:14
Section Resources
00:13
Exceptions in Programming
00:15
Introduction to Docstrings
05:25
Docstrings | Theory
3 questions
How to Write Docstrings | Syntax and Content
06:15
Multi-line Docstrings
09:48
Docstrings | Syntax and Content
2 questions
How to Document Classes in Python
06:29
Example: How to Document a Class
10:14
Function Documentation - Example
01:01
Docstring Styles
00:08
Read Docstrings with help() and __doc__
08:22
Section Quiz | Check Your Knowledge
4 questions
Docstrings for a Flight (Mini Project)
2 questions
Docstrings for a Flight (Mini Project) - PDF Version for the Mobile App
00:24
Discussion Topic: Share your Thoughts
00:10

Special Methods: Add Special Functionality to Your Classes

20 lectures
Welcome to this Section | Special Methods
01:34
Section Topics
00:14
Section Resources
00:13
Introduction to Special Methods
05:41
Why "dunder" Methods?
00:12
Special Methods | Basics
2 questions
Tour of the Python Documentation
04:08
__str__()
10:34
__str__() vs. __repr__()
01:17
__len__()
13:18
__add__()
13:48
__getitem__()
12:47
__bool__()
13:02
__bool__() and __len__() are related?
00:29
Rich Comparison Methods
13:22
__iter__() and __next__()
03:08
Section Quiz | Check Your Knowledge
6 questions
Operator Overloading (Mini Project)
2 questions
Operator Overloading (Mini Project) - PDF Version for the Mobile App
00:24
Discussion Topic: Share your Thoughts
00:07

Final Project: Implement a Linked List | OOP and Data Structures

19 lectures
Data Structures with Object-Oriented Programming
00:27
Introduction to Data Structures
05:38
Nodes in Data Structures (Theory + Code)
18:47
Practice: Create a Sequence of Nodes
00:50
Introduction to Linked Lists
05:48
Linked List Class (Attributes)
03:15
Insert a Node at the Beginning of a Linked List
11:10
Insert a Node in the Middle of a Linked List
14:04
Why self.head.next?
00:17
Insert a Node to the End of a Linked List
04:52
Practice: Insert Nodes with Strings
00:52
Traverse a Linked List to Print its Elements
09:48
Count the Nodes of a Linked List
13:53
Find a Node in a Linked List
08:37
Delete a Node from the Beginning of a Linked List
07:15
Delete a Node from the Middle of a Linked List
09:06
Delete a Node from the End of a Linked List
04:13
Challenge: Print Linked List Items in Reverse Order
00:39
Discussion Topic: Share your Thoughts
00:07

Congratulations | You Completed the Course

3 lectures
(PDF Resource) Study Guide
00:07
Congratulations! You Completed the Course
00:39
Final Steps and Course Certificate
01:14

(Optional) Project: Build a War Card Game using OOP

15 lectures
Welcome to Build a War Card Game
00:26
Welcome to this Project: Build a War Card Game
03:51
Project Requirements
02:30
The Suit Class
04:14
The Card Class: Let's Add Cards to the Game
11:38
The Deck Class: Let's Make a Deck
14:37
The Player Class: Human and Computer Players
06:34
The Game Class (Part 1): Initial Game Setup and Attributes
05:23
The Game Class (Part 2): Start the Battle
15:49
The Game Class (Part 3): It's a Tie! Let's start the War
04:56
The Game Class (Part 4): Check Game Over, Print Statistics, Welcome Player
06:13
Final Phase: Let's Complete and Run the Game
10:27
Challenge: Less than Three Cards
00:24
Project Resources
00:09
Collect Your Badge and Share your Experience
00:28

Archived Curriculum Items

20 lectures
Welcome to the Archived Section
00:30
Welcome to this Section | Object Oriented Analysis and Design
00:24
Section Resources
00:13
Tools: IDLE, PyCharm, or Other IDEs
00:07
Goals of Object-Oriented Analysis and Design
00:04
Object Oriented Analysis: Guidelines
02:21
Introduction to Tic-Tac-Toe
05:19
Tic-Tac-Toe Game Preview
01:05
Player Class
11:34
Board Class (Part 1): Analysis and Attributes
10:22
Board Class (Part 2): Print the Board
07:29
The 'pass' Statement in Python
00:28
Board Class (Part 3): Submit Move and Check if the Move is Valid
07:50
Board Class (Part 4): Check if the Player has Won the Game
14:48
Implement the Tic-Tac-Toe Game
09:10
Player: A Different Constructor
00:39
Mini Project | Music School - Student Records
1 question
Mini Project (PDF Version for Mobile App)
00:12
Challenge: Check Tie
00:36
Bonus Lecture
00:25

Đánh giá của học viên

Chưa có đánh giá
Course Rating
5
0%
4
0%
3
0%
2
0%
1
0%

Bình luận khách hàng

Viết Bình Luận

Bạn đánh giá khoá học này thế nào?

image

Đăng ký get khoá học Udemy - Unica - Gitiho giá chỉ 50k!

Get khoá học giá rẻ ngay trước khi bị fix.