欢迎光临散文网 会员登陆 & 注册

我用Python玩三子棋

2022-07-14 10:34 作者:Rzen瑞恩  | 我要投稿

注:本代码不需要任何库!可直接运行!

i

info = [['.', '.', '.'],

        ['.', '.', '.'],

        ['.', '.', '.']]

number=0


def show():

    print('  1 2 3')

    for i in range(3):

        print(i+1, info[i][0], info[i][1], info[i][2])


def judge():

    #检查斜线1

    if info[0][0] == info[1][1] and info[1][1] == info[2][2]:

        if info[0][0] != '.':

            return info[0][0]

    #检查斜线2

    if info[0][2] == info[1][1] and info[1][1] == info[2][0]:

        if info[0][2] != '.':

            return info[0][2]

    #检查横排

    for i in range(3):

        if info[i][0] == info[i][1] and info[i][1] == info[i][2]:

            if info[i][0] != '.':

                return info[i][0]

    #检查竖排

    for i in range(3):

        if info[0][i] == info[1][i] and info[1][i] == info[2][i]:

            if info[0][i] != '.':

                return info[0][i]

    

    return 'y'


#玩家x下棋

show()

while True: 

    a = input('玩家x,您要把棋子放到第几行:')

    b = input('玩家x,您要把棋子放到第几列:')

    a = int(a)

    b = int(b)

    if info[a-1][b-1] == '.':

        info[a-1][b-1] = 'x'

        number+=1

    else:

        print('ERROR!THERE IS A CHESEE PIECE!')

        exit()

    show()

    flag = judge()

    if flag == 'x':

        print('玩家x胜利')

        break

    elif flag == 'o':

        print('玩家o胜利')

        break

    elif number == 9:

        print('平局!')

        break

    #玩家o下棋

    a = input('玩家o,您要把棋子放到第几行:')

    b = input('玩家o,您要把棋子放到第几列:')

    a = int(a)

    b = int(b)

    if info[a - 1][b - 1] == '.':

        info[a - 1][b - 1] = 'o'

        number+=1

    else:

        print('ERROR!THERE IS A CHESEE PIECE!')

        exit()

    show()

    flag = judge()

    if flag == 'x':

        print('玩家x胜利')

        break

    elif flag == 'o':

        print('玩家o胜利')

        break

    elif number == 9:

        print('平局!')

        break


我用Python玩三子棋的评论 (共 条)

分享到微博请遵守国家法律