tl; dr输出,井字游戏的输出全部为蓝色,只希望x为蓝色,o为红色]]
在课堂上,我们正在尝试制作井字游戏,目前,我们正在尝试以仅X为蓝色而O为红色的方式修改代码,但是当我们导入colorama时,它会为所有输出着色。我知道所有文本都将以蓝色打印。所以从本质上来说,它应该看起来像:我还提供了游戏代码。
import random import colorama from colorama import Fore, Style print(Fore.BLUE + "Hello World") player_1_pick = "" player_2_pick = "" if (player_1_pick == "" or player_2_pick == ""): if (player_1_pick == ""): player_1_pick = "Player 1" if (player_2_pick == ""): player_2_pick = "Player 2" else: pass board = ["_"] * 9 def print_board(): print(board[0] + '|' + board[1] + '|' + board[2]) print(board[3] + '|' + board[4] + '|' + board[5]) print(board[6] + '|' + board[7] + '|' + board[8]) print_board() if (random.randint(1,2) == 1): player_1_pick = input(player_1_pick + ", choose X or O: ").upper() if (player_1_pick == "X"): player_2_pick = "O" while True: x = input('Pick a number from 0-8') x = int(x) board[x] = 'X' print_board()
然后,我们决定打开另一个python选项卡(我们正在使用repl.it)来尝试在孤立的环境中解决此问题,我们在其中提出了:]]
import random import colorama from colorama import Fore, Style def getPieceLabel(piece): if (piece == 1): return "|" + color.PURPLE + color.BOLD + "X" + color.END + "|" elif (piece == 2 ): return "|" + color.BLUE + color.BOLD + "O" + "|" else: return color.BOLD + "|_|" + color.END board = ["_"] * 9 def print_board(): print(board[0] + '|' + board[1] + '|' + board[2]) print(board[3] + '|' + board[4] + '|' + board[5]) print(board[6] + '|' + board[7] + '|' + board[8]) print(Style.RESET_ALL) while True: x = input('Pick a number from 0-8') x = int(x) board[x] = 'X' print_board()
我们需要一些帮助找出问题所在/问题所在。
tl; dr输出,井字游戏的输出全部为蓝色,只希望x为蓝色,o为红色,在课堂上,我们正在尝试制作井字游戏,目前我们正在尝试以这种方式修改代码只有X ...
这里是一个代码,可为不同的项目打印不同的颜色(也在repl.it上测试!)。
import random
import colorama
from colorama import Fore, Style
print(Fore.BLUE + "Tic Tac Toe")
Style.RESET_ALL
player_1_pick = ""
player_2_pick = ""
if (player_1_pick == "" or player_2_pick == ""):
if (player_1_pick == ""):
player_1_pick = "Player 1"
if (player_2_pick == ""):
player_2_pick = "Player 2"
else:
pass
board = ["_"] * 9
def print_board():
for i in range(0, 3):
for j in range(0, 3):
if (board[i*3 + j] == 'X'):
print(Fore.BLUE + board[i*3 + j], end = '')
elif (board[i*3 + j] == 'O'):
print(Fore.RED + board[i*3 + j], end = '')
else:
print(board[i*3 + j], end = '')
print(Style.RESET_ALL, end = '')
if j != 2:
print('|', end = '')
print() # new line
print_board()
if (random.randint(1,2) == 1):
player_1_pick = input(player_1_pick + ", choose X or O: ").upper()
if (player_1_pick == "X"):
player_2_pick = "O"
while True:
x = input('Pick a number from 0-8: ')
x = int(x)
board[x] = 'X'
print_board()