Skip to content

Instantly share code, notes, and snippets.

View C1200's full-sized avatar

C1200 C1200

View GitHub Profile
@C1200
C1200 / oneline.py
Created August 8, 2023 19:27
Tic Tac Toe in one line of Python
(lambda T,S,V:T(T,S,V))(lambda M,S,_:[print(f" {v} ",end="\n"if k%3==2 else"|")for k,v in enumerate(S[1])]and not(lambda S:not print(f"{S[0]} won!")if any((any(S[1][a]==S[1][a+1]==S[1][a+2]for a in[0,3,6]),any(S[1][a]==S[1][a+3]==S[1][a+6]for a in range(3)),(S[1][0]==S[1][4]==S[1][8])or(S[1][2]==S[1][4]==S[1][6])))else(False if any(v.isdigit()for v in S[1])else not print("Tie!")))(S:=(S[0],(lambda T,S,V:T(T,S,V))(lambda M,S,V:[(S[0]if v==V else v)for v in S[1]]if S[1][int(V)-1]==V else M(M,S,input(f"{S[0]}'s turn: ")),S,input(f"{S[0]}'s turn: "))))and M(M,("O"if S[0]=="X" else"X",S[1]),None),("X",[f"{i}"for i in range(1, 10)]),None)