当前位置: 首页> 健康> 科研 > python制作井字棋程序

python制作井字棋程序

时间:2025/8/23 13:48:04来源:https://blog.csdn.net/2301_81968528/article/details/141873089 浏览次数:0次

井字棋的九个格子可以用二进制表示,整个运算过程用位运算。

三个相同标记连续在一条直线,事先准备好样本,如果样本与使用and运算相同,就判断三个标记是一起的。

代码如下

import random

goal=[
    0b111000000,0b000111000,0b000000111,0b100100100,
    0b010010010,0b001001001,0b100010001,0b001010100
]

def check(player):
    for mask in goal:
        if player & mask ==mask:
            return True
    return False
    
def play(p1,p2):
    if check(p2):
        print([bin(p1),bin(p2)])    
        return
        
    board=p1 | p2
    if board==0b111111111:
        print([bin(p1), bin(p2)])  
        return
        
    w=[i for i in range(9) if(board & (1<<i))==0]     
    r=random.choice(w) 
    play(p2,p1| 1<<r)
play(0,0)    
    

关键字:python制作井字棋程序

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: