Project
Simple Tic-Tac-Toe with Python
Medium
6508 completions
~ 11 hours
4.4Create a dynamic Tic-Tac-Toe game in Python, progressing from a basic grid display to a fully interactive two-player experience.
Provided by
JetBrains Academy
About
Everybody remembers this paper-and-pencil game from childhood: Tic-Tac-Toe, also known as Noughts and crosses or Xs and Os. A single mistake usually costs you the game, but thankfully it is simple enough that most players discover the best strategy quickly. Let’s program Tic-Tac-Toe and get playing!
Training project
This project allows you to practice and strengthen your coding skills, helping you get ready for more advanced tasks ahead.
What you'll learn
Once you choose a project, we'll provide you with a study plan that includes all the necessary topics from your course to get it built. Here’s what awaits you:
To start things off, the program needs to be able to print any state of the field. You’ll write a serious multi-line program using a lot of prints.
Now it’s time to analyze user input and print the state of the field depending on it. You’ll learn to address specific positions in a string to achieve the required outcome.
Now we’re going to write a fully-functioning multi-line program that responds to the user’s actions and analyzes the state of the field. Not only will it tell you who is winning, but it will also determine if the situation on a given field is theoretically possible!
Tic-tac-toe is not all about analysis – a game is meant to be played! Write a program that can change the state of the field, as your first real step toward a fully-functioning game application!
Finally! Thanks to this app, you can always challenge a friend to play a quick game of Tic-Tac-Toe!
Reviews
T
TheSingular3 months ago
I have learned about nested lists, any() and all() methods and applied them via list comprehensions to them to program tic-tac-toe with readable code that can have an arbitrary board size.
I think the major thing that I learned was how to be efficient with list comprehension along with abstraction of different pieces of the game loop into different functions. The difficulties I faced were making proper use of global variables and being sure that I was using the 'global' tag properly w ...
4.4
Learners who completed this project within the Python Developer course rated it as follows: