Python实现井字棋小游戏


Posted in Python onMarch 09, 2020

本文实例为大家分享了Python实现井字棋小游戏的具体代码,供大家参考,具体内容如下

import os
 
def print_board(board):
 print(board['TL'] + '|' + board['TM'] + '|' + board['TR'])
 print('-+-+-')
 print(board['ML'] + '|' + board['MM'] + '|' + board['MR'])
 print('-+-+-')
 print(board['BL'] + '|' + board['BM'] + '|' + board['BR'])
 
 
def main():
 init_board = {
  'TL': ' ', 'TM': ' ', 'TR': ' ',
  'ML': ' ', 'MM': ' ', 'MR': ' ',
  'BL': ' ', 'BM': ' ', 'BR': ' '
 }
 begin = True
 while begin:
  curr_board = init_board.copy()
  begin = False
  turn = 'x'
  counter = 0
  os.system('clear')
  print_board(curr_board)
  while counter < 9:
   move = input('轮到%s走棋, 请输入位置: ' % turn)
   if curr_board[move] == ' ':
    counter += 1
    curr_board[move] = turn
    if turn == 'x':
     turn = 'o'
    else:
     turn = 'x'
   os.system('clear')
   print_board(curr_board)
  choice = input('再玩一局?(yes|no)')
  begin = choice == 'yes'
 
 
if __name__ == '__main__':
 main()

效果图:

Python实现井字棋小游戏

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
跟老齐学Python之有容乃大的list(1)
Sep 14 Python
python类继承用法实例分析
May 27 Python
Python安装使用命令行交互模块pexpect的基础教程
May 12 Python
PyCharm 常用快捷键和设置方法
Dec 20 Python
pyqt5自定义信号实例解析
Jan 31 Python
使用python绘制3维正态分布图的方法
Dec 29 Python
Python设计模式之组合模式原理与用法实例分析
Jan 11 Python
Python利用scapy实现ARP欺骗的方法
Jul 23 Python
python GUI库图形界面开发之PyQt5滑块条控件QSlider详细使用方法与实例
Feb 28 Python
python实现密码验证合格程序的思路详解
Jun 01 Python
利用PyTorch实现VGG16教程
Jun 24 Python
python实现梯度下降算法的实例详解
Aug 17 Python
python爬虫开发之selenium模块详细使用方法与实例全解
Mar 09 #Python
python为QT程序添加图标的方法详解
Mar 09 #Python
python爬虫开发之PyQuery模块详细使用方法与实例全解
Mar 09 #Python
详解pandas中iloc, loc和ix的区别和联系
Mar 09 #Python
pandas中ix的使用详细讲解
Mar 09 #Python
Python unittest 自动识别并执行测试用例方式
Mar 09 #Python
python爬虫开发之urllib模块详细使用方法与实例全解
Mar 09 #Python
You might like
SMARTY学习手记
2007/01/04 PHP
apache rewrite_module模块使用教程
2008/01/10 PHP
初识PHP
2014/09/28 PHP
围观tangram js库
2010/12/28 Javascript
全面理解面向对象的 JavaScript(来自ibm)
2013/11/10 Javascript
JavaScript生成的动态下雨背景效果实现方法
2015/02/25 Javascript
JavaScript动态创建div等元素实例讲解
2016/01/06 Javascript
全面解析Bootstrap中tab(选项卡)的使用方法
2016/06/06 Javascript
jQuery操作iframe中js函数的方法小结
2016/07/06 Javascript
JavaScript 监控微信浏览器且自带返回按钮时间
2016/11/27 Javascript
JS创建Tag标签的方法详解
2017/06/09 Javascript
jQuery实现滚动到底部时自动加载更多的方法示例
2018/02/18 jQuery
详解webpack的proxyTable无效的解决方案
2018/06/15 Javascript
web页面和微信小程序页面实现瀑布流效果
2018/09/26 Javascript
NodeJs 模仿SIP话机注册的方法
2019/06/21 NodeJs
iview的table组件自带的过滤器实现
2019/07/12 Javascript
JavaScript实现原型封装轮播图
2020/12/27 Javascript
js实现电灯开关效果
2021/01/19 Javascript
[02:13] 完美世界DOTA2联赛PWL DAY5集锦
2020/11/03 DOTA
python实现在IDLE中输入多行的方法
2018/04/19 Python
tensorflow如何继续训练之前保存的模型实例
2020/01/21 Python
详解Python直接赋值,深拷贝和浅拷贝
2020/07/09 Python
Python基于xlrd模块处理合并单元格
2020/07/28 Python
教你如何用python操作摄像头以及对视频流的处理
2020/10/12 Python
python实现发送邮件
2021/03/02 Python
HTML5 拖放(Drag 和 Drop)详解与实例代码
2017/09/14 HTML / CSS
翻译专业应届生求职信
2013/11/23 职场文书
小学班干部竞选演讲稿
2014/04/24 职场文书
医德医风演讲稿
2014/05/20 职场文书
承租经营合作者协议书
2014/10/01 职场文书
公安局副政委班子个人对照检查材料
2014/10/04 职场文书
普通党员群众路线教育实践活动心得体会
2014/11/04 职场文书
2016年第16个全民国防教育日宣传活动总结
2016/04/05 职场文书
PHP实现创建以太坊钱包转账等功能
2021/04/21 PHP
Python Django搭建文件下载服务器的实现
2021/05/10 Python
Winsows11性能如何? win11性能测评多核竟比Win10差了10%
2021/11/21 数码科技