Python TIC TAC TOE Tutorial | Beginner Friendly Tutorial

Поделиться
HTML-код
  • Опубликовано: 27 окт 2024

Комментарии • 222

  • @Fresco7
    @Fresco7 2 года назад +133

    board = ['-', '-', '-',
    '-', '-', '-',
    '-', '-', '-']
    currentPlayer = "X"
    winner = None
    gameRunning = True
    #printing board
    def printBoard(board):
    print(board[0] + " | " + board[1] + " | " + board[2])
    print("-" * 9)
    print(board[3] + " | " + board[4] + " | " + board[5])
    print("-" * 9)
    print(board[6] + " | " + board[7] + " | " + board[8])
    #take player input
    def playerInput(board):
    while True:
    if currentPlayer == "X":
    inp = int(input(f"Enter a number 1-9 \033[1;34m Player (X) \033[0;0m : "))
    else:
    inp = int(input(f"Enter a number 1-9 \033[1;31m Player (0) \033[0;0m : "))
    if inp >= 1 and inp

  • @samreither
    @samreither 2 года назад +47

    my man... this was a great video. I love how you lay this out. I've tried watching other basic python projects but have trouble following other people's thinking, but your's came really intuitive to me so THANK YOU. Gonna be watching more of your vids for sure. Thanks again!

  • @River8346
    @River8346 Год назад +7

    For those who found the bug that appears when the last input is a winning move, and it displays both the Win AND Tie text, this should fix it. If you add a "exit()" command inside of the "def checkWin()" segment, it should work itself out:
    def checkWin():
    if checkDiagonal(board) or checkHorizontal(board) or checkRow(board):
    print(f"The winner is {winner}")
    gameRunning = False
    exit()
    Since the gameRunning loop checks for a Win BEFORE it checks for a Tie, you only have to apply this to the "def checkWin()" segment :)

    • @denisem1951
      @denisem1951 Год назад

      instead of exit() is there a different code that will just end the shell instead of exiting out of it?

    • @River8346
      @River8346 Год назад

      @@denisem1951 I don't think that the "exit()" line will literally exit the shell, only end the code. You can try "quit()" as well :). That should work too, although I haven't tried it.

    • @Caroline-pb8xx
      @Caroline-pb8xx Год назад +1

      WOW! how cool!

  • @Yinyang1277
    @Yinyang1277 Год назад +3

    after dealing with some hiccups throughout this tutorial. I noticed there were some indentation errors for me, but overall I got it to work in the end! Thank you for your tutorial as this was my first ever project and I am getting a grasp on the terminology.

  • @_iam_seven_
    @_iam_seven_ 2 года назад +3

    the most easy way and literally easy to understand. The best tutorial

  • @denisem1951
    @denisem1951 Год назад +2

    You explained this better than how my professor explain python... thank you!!

  • @vanlang9959
    @vanlang9959 2 года назад +5

    Great beginner-friendly tutorial on how to build a simple project like TicTacToe!

  • @PeppyHannah
    @PeppyHannah 10 месяцев назад +1

    This was really fun to do, thank you so much! Do you think you could possibly do some Python tutorials for complete beginners? The way you teach and explain what you're doing is the best and would love to see it in Python tutorials 😆

  • @subhransu7810
    @subhransu7810 2 года назад +10

    so damn awesome my man. i loved it all the way. my first big project in learning python. thanks for the tutorial.

  • @fulamstrong7921
    @fulamstrong7921 Год назад +2

    I will like following you up till I fully understand programming.

  • @drsoundy
    @drsoundy 2 года назад +11

    Something is false I think. If you use a number which is already taken, the player switch. So one person can play two times if the other took a number which has alraedy been used (sry for bad english but hope y'all understand)

    • @pramitsingh2847
      @pramitsingh2847 Месяц назад

      yesssss

    • @JohnKaori2004
      @JohnKaori2004 22 дня назад

      the way to fix that is to loop the players input until it meets the condition. in that way if you input the same number it loops and it asks the input again, then if it meets the conditon ,the loop breaks and then the computer will proceed
      def player_Input(board):
      while True:
      inp = int(input("Enter number from 1-9: "))
      if inp >=1 and inp

  • @avdd809
    @avdd809 Год назад +21

    am i the only one facing the audio problem

  • @xzex2609
    @xzex2609 Год назад +3

    Obviously you are coming from JS , in python we do board = ["-"] * 9 and you don't need to pass board to the function cause it's on global scope and functions defined after that has access to the board.

  • @Caroline-pb8xx
    @Caroline-pb8xx Год назад

    you make it so easy to understand, but actually making it and developing the program is a whole different story!

  • @RubiBrintz
    @RubiBrintz 29 дней назад

    Great video, friend! Thank you. However, how do you add a replay option?

  • @fulamstrong7921
    @fulamstrong7921 Год назад +1

    The best lecture to me as a beginner ,thanks.

  • @alzhanvoid
    @alzhanvoid Год назад +3

    Hey when the game ends with a horizontal or diag or row as the last input (no "-" on the board remaining but last input made one of 3 lines) it still says that it's a tie despite clearly being a win for one of the players. How can I fix this?

  • @soumitakar4373
    @soumitakar4373 4 месяца назад

    Most simplest video on yt, Thanks a lot.

  • @arslan5829
    @arslan5829 2 года назад +2

    Excellent; I will return to this one once I finish my weekly assignments. Great video!

  • @RickyBascom
    @RickyBascom 2 года назад +2

    thank you! this makes more sense than the free code camp one

  • @BoddepallliKeshavaKumar-qx6hp
    @BoddepallliKeshavaKumar-qx6hp 5 месяцев назад +1

    very nice video, good explanation and well understood . Thank You

  • @user-mx7qp9ls3o
    @user-mx7qp9ls3o 2 года назад +1

    Thanks for this, ive been learning python for a few weeks and i did a few projects and yet i still had some trouble with the basics...

  • @alafleur39
    @alafleur39 2 года назад +3

    this is a very clear and concise tutorial

  • @karimeissa2089
    @karimeissa2089 11 дней назад

    in the function userInput you should call it again recursively in the else statement like this:
    def playerInput(board):
    inp = int(input("Select a spot 1-9: "))
    if board[inp-1] == "-":
    board[inp-1] = currentPlayer
    else:
    print("Oops player is already at that spot.")
    playerInput(board)
    Because if the user chooses a number which was already chosen it will display the message and then go to the next player, but we want the same user to try again in another spot, not switch players after an error

  • @faithnsikak1032
    @faithnsikak1032 2 года назад +3

    This was really great ..your explanations and steps are great! excellent work. Thank you so much for this video.

  • @mohammadadil5080
    @mohammadadil5080 Год назад

    The best tic tac toe tutorial.

  • @Rahul-ld6po
    @Rahul-ld6po 2 года назад

    thanks man im a beginner and ive seen like 3 tutorials and yours is the most easy to understand.

    • @CodeCoachh
      @CodeCoachh  2 года назад

      Glad I could help, thanks for the support!

  • @manoville3840
    @manoville3840 2 года назад +2

    Great vid coach… I was wondering how to code it so that the bot doesn’t always win… can u make a vid on that?

    • @CodeCoachh
      @CodeCoachh  2 года назад +1

      Was up Nate! Check my response on the minimax video!

  • @Raf-01
    @Raf-01 Год назад

    Great Explanation and video, i was just wondering is there a way to end the code if someone wins

  • @tasneemmotiwala3917
    @tasneemmotiwala3917 2 года назад +1

    i dont know why but when ever i put in a number it shows oops player has taken the spot pls help

  • @woovs101
    @woovs101 Год назад +2

    I m wondering how to get the game to reset after the win. I was thinking that after gamerunning = false you could break the loop... but doesn't seem to work for me... any tips?

    • @anasmahdi5149
      @anasmahdi5149 Год назад

      yeah same here ,after winning the game , the game is not resetting automatically. gameRunning = False is also not working for me

  • @milestones3481
    @milestones3481 2 года назад +4

    Thank you for a clear explanation. You are the best!!!

  • @isabellapucci2098
    @isabellapucci2098 Год назад +1

    Thank you for this video!!! I have to do a project for my programming class and this has helped me understand a ton!!
    I have to use Matlab… I think it’s doable as long as some changes are made for the language… do you think this would be a possibility?

    • @CodeCoachh
      @CodeCoachh  Год назад

      I’m sure it can be done tic tac toe is pretty simple.

  • @katilehtonen614
    @katilehtonen614 Год назад +1

    using this as a base, how could I make a "star menu" at the beginning where you can choose if you want to play against the computer or a friend?

    • @bartpekelaer8047
      @bartpekelaer8047 Год назад +1

      def start_game():
      mode = input('Choose mode pvp/ai: ')
      if mode == 'pvp':
      run_pvp()
      else:
      run_ai()
      def run_pvp():
      while game_running:
      print_board(board)
      player_input(board)
      check_win()
      check_tie(board)
      switch_player()
      def run_ai():
      while game_running:
      print_board(board)
      player_input(board)
      check_win()
      check_tie(board)
      switch_player()
      ai_player(board)
      check_win()
      check_tie(board)
      start_game()
      this would be a way to handle both computer and player.
      *note i changed some function names to my liking but should be clear in reference to the tutorial

  • @rudix4872
    @rudix4872 Год назад +3

    Great video, thank you very much :) however i have a slight problem. When the board is completely full and either player wins on the last move, it prints out above the board that the winner is ___ and bellow the board it says that it is a draw. Do you have the same problem od did I make a mistake? Thanks

    • @River8346
      @River8346 Год назад +1

      You didn't make a mistake! If you add a "exit()" command inside of the "def checkWin()" segment, it should work itself out:
      def checkWin():
      if checkDiagonal(board) or checkHorizontal(board) or checkRow(board):
      print(f"The winner is {winner}")
      gameRunning = False
      exit()
      Hope this helped!

  • @blazetekchaos8498
    @blazetekchaos8498 Год назад +1

    This is a wonderful video, but in the case that the last move results in a win then it would print both the winner and also that it is a tie, what is a different way you could get around this?

  • @iiiiiiiiii8489
    @iiiiiiiiii8489 Год назад

    great video looking forward to seeing another project thank you for all the help.

  • @kamat069
    @kamat069 2 года назад +1

    It was a really nice and informativ Video, I learned a lot from you!
    But I found 1 small bug. If you choose a number that was already picked, the Computer atomatically just picks another spot so hes in the lead.
    But i fixed it with just one line: Where you printed the line "Oops player already in that spot"
    Write underneath switchPlayer()
    And your done it just switches back to you.
    I hope you know what I mean by that.

    • @CodeCoachh
      @CodeCoachh  2 года назад

      Yes, some others pointed out my flaw in my logic here I’m glad you were able to figure out my error!

  • @togicodes
    @togicodes 2 года назад +1

    What is your vscode theme?

  • @Kira-dw7ko
    @Kira-dw7ko Год назад +1

    hi, how can i make it on 3 wins?

  • @ulludots
    @ulludots Год назад

    by far the best workflow for Tic Toe Toe

  • @realperson9951
    @realperson9951 2 года назад +1

    i have a few problems when i was copying the code
    1. the board was printed twice in the beginning
    2. when i put an occupied space as X, the current player next turn would be changed to O
    3. it says there is a problem at "position = random.randint(0, 8) and i dont know how to fix this

    • @CodeCoachh
      @CodeCoachh  2 года назад

      It’s hard for me to debug considering I do not have ur code but 2 sounds correct and for 3 I would double check you imported random.

    • @realperson9951
      @realperson9951 2 года назад

      @@CodeCoachh i'll check it later today and import random, thanks

  • @jacktyler924
    @jacktyler924 2 года назад +1

    The video is awesome, quite enjoyed it!

  • @myblessed
    @myblessed 2 года назад +2

    awesome tutorial!

  • @mxo709
    @mxo709 2 года назад

    Hi, i've found 2 big problems...first if you pplay against the computer he can't win, second if then computer win the game continue and if you win the game give you the win and when the board is full it's a tie. If you play against yourself using this combination of number (1-2-3-4-5-6-8-7-9) the game give you the win but it's a tie and immediately after the game print that it's a tie because the board is full...I'm trying to find where the problems, did you had already found them?

    • @fnni3720
      @fnni3720 2 года назад

      if you combine the checkTie def with the checkWin def...
      example:
      def checkWinOrTie(board):
      global gameRunning
      if checkHorizontal(board) or checkRow(board) or checkDiag(board):
      print(f"The winner is {winner}!")
      gameRunning = False
      elif "-" not in board:
      print("It is a Tie!")
      gameRunning = False
      ...I think that should fix the problem with the tie print

  • @CodeCoachh
    @CodeCoachh  3 года назад +10

    Let me know what you guys think!

    • @AlExItOXD409
      @AlExItOXD409 2 года назад

      Hi coach! I was testing your program and i found an error. When you insert a number that is already occupied, it stills switching the turn and enables the x or o user to make 2 moves in a row. Do you know how can i solve it. Thanks for your help :)

    • @thereverend01
      @thereverend01 2 года назад

      hi how can we make this using A* algo? would really appreciate if you could teach it

    • @msvisoko9105
      @msvisoko9105 2 года назад

      @@AlExItOXD409 I did player input like this and it works fine (no switching error):
      def player_input(board):
      while True:
      try:
      inp = int(input("Enter a number 1-9: "))
      if 1

    • @CodeCoachh
      @CodeCoachh  2 года назад +1

      @@thereverend01 Planning on doing this tutorial before the end of the summer!

  • @Mr.Phantom001
    @Mr.Phantom001 2 месяца назад

    Thanks mate for this help❤

  • @uchejanefrances5249
    @uchejanefrances5249 Год назад

    When I run my python code on visual studio code the numeric keys are not working why is that?
    Enter your name 1-9: .my numeric keys aren't working in this line why?

  • @Jack_Merrett_
    @Jack_Merrett_ Год назад

    thanks this was a tremendous help!

  • @HenryBancroft
    @HenryBancroft 9 месяцев назад

    Nice video thank you , only had to change it on playerInput , because if there was a "oops blablabla.." it would switch to the next player , so you can fill the rest of the grid with only O or only X if you want :
    def playerInput(board):
    while True:
    user_input = int(input("Enter a number 1-9: "))
    if user_input >= 1 and user_input

  • @gilbertgonzalez7766
    @gilbertgonzalez7766 2 года назад +2

    Best tic tac toe tutorial on RUclips

  • @emmanuellemus3942
    @emmanuellemus3942 Год назад +1

    what is the website called?

  • @ryanm8431
    @ryanm8431 2 года назад +3

    i understood most of this but why is the -1 place in the [inp-1 ] ?
    if inp >= 1 and inp

    • @nicolasliegeard1401
      @nicolasliegeard1401 2 года назад +8

      Because the board starts at index 0, so it goes from board[0] up to board[8] while we asked the user to choose a number between 1-9

    • @godza4735
      @godza4735 2 года назад

      to avoid index out of range

  • @hanzalakhan-by8si
    @hanzalakhan-by8si Год назад

    thanks man it was so much helpful

  • @mansuriaziz
    @mansuriaziz 2 года назад

    thanks, very nice and clear about contents the only thing I was curious to know is how can we make computer to try to win rather than throwing random input

    • @CodeCoachh
      @CodeCoachh  2 года назад

      There are a couple algorithms which can be implemented to improve the computer. The most common is the mini max algorithm and I could potentially make a video adding that feature to the game.

  • @a.hannan_06
    @a.hannan_06 Год назад

    while running the "gamerunning func at 9:30 , its saying ""bool object is not callable""////--> how do we solve this??

  • @vatsaljohar9646
    @vatsaljohar9646 Год назад

    there is one bug in this code and I'm not able to figure out how to correct it. if player x wins still o takes the turn and then winner is declared

  • @SlytherinLassie
    @SlytherinLassie 4 месяца назад

    I didn't understand the "board[inp-1]" thing in the function of playerInput.

  • @LunchBox77
    @LunchBox77 2 года назад

    Awesome video dude, very helpful

  • @riskatjukyungssi8858
    @riskatjukyungssi8858 Год назад

    I tried running it @9:39 but it keeps telling me “oops player is already in that spot” but there’s no player. I need help

  • @ayeitzbam
    @ayeitzbam Год назад

    I’m new to coding does this have a list and a function?

  • @SuperAxon2
    @SuperAxon2 2 года назад +1

    After print("Oops player already on that spot") executes, the computer keeps playing until the game ends, which crashes it.
    I added the switchPlayer() function right below the print. That solved the issue.

  • @iwatchanime9789
    @iwatchanime9789 5 месяцев назад

    HELP great vid i copied it perfectly but im jw how do i get in the terminal mine isnt like urs also i cant run the program it says error "cant find __main__" i put this in a new file im 1 week into coding so i probably didnt do something very basic

  • @kodama7132
    @kodama7132 9 месяцев назад

    so with this im finding that if you choose a spot that is already taken, it still switches currentPlayer variable and skips your turn

    • @Marci.K
      @Marci.K 7 месяцев назад

      You can fix this by removing switchPlayer() from the while cycle and put it in the playerInput under the if statement

  • @skylorhamilton9151
    @skylorhamilton9151 5 месяцев назад

    Oddly I'm getting "oops player is already in that spot when entering 1. 2-9 is cool though. There's a dash in the 1 position in the code just like 2-9. The computer is able to use position 1 though.

  • @Phriffo
    @Phriffo Год назад

    I've been told to stop watching tutorials and build projects without help by so many programming RUclipsrs and I follwed the advice, but I just couldn't make the Tic Tac Toe game. No matter how hard I tried, I just couldn't make it happen. I feel so stupid and I have so many doubts whether I should continue or not. Can somebody help or give me advice to how to become comfortable in writing Python code, and can't even build any projecst😢😢

  • @alealvarado4793
    @alealvarado4793 2 года назад

    great tutorial it saved my term

  • @theoracle_cescido
    @theoracle_cescido 2 года назад

    Well explained and easy to understand . Great!!!

  • @__ikiran
    @__ikiran Год назад

    such an amazing video bro

  • @aaddaarr
    @aaddaarr 9 месяцев назад

    Great tutorial

  • @kaiantoniooda1501
    @kaiantoniooda1501 Год назад

    Your check diagonal when its from top left to bottom right is incorrect.

  • @jannieltan5615
    @jannieltan5615 Год назад +1

    Why is mine not working? NameError: name 'checkWin' is not defined
    board = ["-", "-", "-",
    "-", "-", "-",
    "-", "-", "-"]
    currentPlayer = "X"
    winner = None
    gameRunning = True
    #printing the game board
    def printBoard(board):
    print(board[0] + " | " + board[1] + " | " + board[2])
    print("---------")
    print(board[3] + " | " + board[4] + " | " + board[5])
    print("---------")
    print(board[6] + " | " + board[7] + " | " + board[8])
    print("---------")

    # take player input
    def playerInput(board):
    inp = int(input("Enter a number 1-9: "))
    if inp >= 1 and inp

  • @martinkichukov3144
    @martinkichukov3144 2 года назад

    When the player inputs an invalid input (e.g. if 10 is inputted) it switches immediately to the next player so is there any way to fix that

  • @zayinconde8971
    @zayinconde8971 Год назад

    i didnt get how the "global" works, both with "global currentPlayer" and "global winner"?

  • @edenlee7752
    @edenlee7752 2 года назад +1

    Hi @coachcode for the code board(inp-1) == "-" at 8:02 of the video
    I understand that it is to check if the position picked on the board by the player is empty. But why is there -1 from inp? Shouldn't it be just board(inp) to check the availability of the position picked by the player on the board?

    • @d1ylor266
      @d1ylor266 2 года назад +5

      Basically, a program counts a list like 0, 1, 2, 3, 4 and we usually count a list like 1, 2, 3, 4, 5. So when the person inputs a 6 we want to convert it to a computer number which is five or (input-1). (hope this helps)

    • @262626VJ26
      @262626VJ26 2 года назад

      @@d1ylor266 so you mean like last number in that list?

    • @mrup4825
      @mrup4825 2 года назад +2

      @@262626VJ26 the indexes in the list go from 0 to 8 but the numbers you input go from 1 to 9 so you have to subtract one from the input to get the correct index

  • @ghoulzexz5135
    @ghoulzexz5135 2 года назад

    brilliant video really helped me out thanks alot

  • @shrithikvardhan
    @shrithikvardhan 2 года назад +2

    can you code tic tac toe which is multiplayer and vs computer , with scores and time

    • @CodeCoachh
      @CodeCoachh  2 года назад

      Basic multiplayer requires a lot more code and gets pretty advanced but maybe if I have a lot of time over a long weekend I can try and learn how to do it! In the mean time, I just published a video creating an unbeatable AI to play against in this tic tac toe game

  • @user-dojgeo
    @user-dojgeo Год назад

    Thank you for giving me a good lecture, sir.

  • @justpriyanshlife
    @justpriyanshlife Год назад

    Totally worth it!

  • @i11usion
    @i11usion 5 месяцев назад

    Thank you!

  • @clovergrey
    @clovergrey Год назад

    How do I create the option to replay the game instead of exiting?

  • @omatamaneenyanga1586
    @omatamaneenyanga1586 9 месяцев назад

    My python isn't showing the board and it Python 3.12.0

  • @thanapalthanapal9838
    @thanapalthanapal9838 5 месяцев назад

    tnk u so much, it very helpful

  • @alicemureverwi4910
    @alicemureverwi4910 2 года назад +1

    Hi great tutorial really helpful. I was following your code and I get stuck when you create the function checkWin, when i create my if loop and try to call the other functions that check for rows, columns and diagonally I get an error message that those 3 functions dont exist. I cant figure out why this could be

    • @CodeCoachh
      @CodeCoachh  2 года назад

      I would make sure the functions are spelled the same in both places - sorry for the late reply

  • @pavelpolosin2217
    @pavelpolosin2217 4 месяца назад

    I don't understand. How is possible to equal board[inp - 1] = current_player. But current_player variable is a string type, and inp - integer

    • @Aqua001_
      @Aqua001_ 2 месяца назад

      8:28
      That [inp-1] is to find the index(Since the player input starts at 1 and the board index starts at 0 we sub the 1) after that we assign the player input to the board accourding to the index.
      Therefore it is Board[index] = playerInp.

  • @Personpac
    @Personpac Год назад

    I made a couple edits to the code but the switchPlayer function isn't working anymore and only placing X, can you help?
    #Building Board
    board = ['-', '-', '-',
    '-', '-', '-',
    '-', '-', '-']
    currentPlayer = "X"
    winner = None
    gameRunning = True
    def printBoard(board):
    print(board[0] + ' | ' + board[1] + ' | ' + board[2])
    print('----------')
    print(board[3] + ' | ' + board[4] + ' | ' + board[5])
    print('----------')
    print(board[6] + ' | ' + board[7] + ' | ' + board[8])
    #Player Input
    def playerInput(board):
    inp = int(input('Enter a Number 1-9: '))
    if inp >= 1 and inp

    • @Personpac
      @Personpac Год назад

      nvm i just put a double instead of single equal sign on the currentPlayer = "o" bit

  • @thomashowald2592
    @thomashowald2592 Год назад

    thank you !!!!!! nice and clear.

  • @Misao.
    @Misao. 7 месяцев назад +1

    your voice is attractive

  • @samatamotors2299
    @samatamotors2299 6 месяцев назад

    Thank you so much life save!

  • @sreekalaranjit2938
    @sreekalaranjit2938 2 года назад

    why do you send the board variable in the arguments if its already global? wont it be otherwise accesible?

    • @CodeCoachh
      @CodeCoachh  2 года назад

      Within the scope of the function any variable is classified as local (not existing outside the function) unless passed as a parameter or declared as global.

  • @bibalbo3993
    @bibalbo3993 2 года назад

    How can we make it so the game ends after someone wins? I've tried a few things but can't come up with It myself. As of now, after a player wins, the game continues and it ends in a tie.

    • @CodeCoachh
      @CodeCoachh  2 года назад

      To make the game end you would have to break out of the game loop following a win or a tie.

    • @twinkletoes1019
      @twinkletoes1019 Год назад

      @@CodeCoachh And how would we do that? where would we have to change the code?

  • @exED
    @exED Год назад

    hi just wanted to ask, what does
    "-1" in board[inp-1] == "-" ?

    • @CodeCoachh
      @CodeCoachh  Год назад

      Here we are checking if the position in the board the user inputted is equal to “-“ to see if that is an empty position as the array board was initialized containing “-“ and input -1 is the index of the position we must check.

  • @kaliyuuu
    @kaliyuuu 2 года назад

    amazing, thank you

  • @remist
    @remist 2 года назад +3

    bruh this tutorial confused me a lot haha but thanks anywayys

  • @yomnaderbala4090
    @yomnaderbala4090 2 года назад

    did you use any search algorithm in this code!!?

    • @SAN925
      @SAN925 2 года назад +1

      No there is no need for searching in this simple input based game

  • @废话多多小肥羊
    @废话多多小肥羊 Год назад

    Great video!!!!!!!!!!
    ❤❤❤❤

  • @jane_rosso
    @jane_rosso 2 месяца назад

    thank you sir 🌝💗

  • @varun-k2i
    @varun-k2i 5 месяцев назад

    keep going bro

  • @gkof23
    @gkof23 2 года назад

    on line 87
    def computer(board)
    why do you set the position that the computer can pick from 1-8 only ? why not 1-9 ?

    • @CodeCoachh
      @CodeCoachh  2 года назад +1

      That is because in programming counting always starts at 0. In this game we represented the game board as an array of strings with each index representing a spot on the board - so in order to set a random position all we have to do is generate a random number excluding 9 as 8 is the max index in the list. I hope this made sense!

    • @gkof23
      @gkof23 2 года назад

      @@CodeCoachh Thank you for the explanation, but if that's the case, why is it not 0-8?

  • @XxAbdo
    @XxAbdo 2 года назад

    what is the theme that you are using

    • @CodeCoachh
      @CodeCoachh  2 года назад +1

      I do not really remember which theme it was. It was a while ago on a different laptop. Sorry I could not be more helpful.