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 相关文章推荐
Pyhton中单行和多行注释的使用方法及规范
Oct 11 Python
python实现数据导出到excel的示例--普通格式
May 03 Python
Python基于多线程操作数据库相关问题分析
Jul 11 Python
利用Django-environ如何区分不同环境
Aug 26 Python
Python数据预处理之数据规范化(归一化)示例
Jan 08 Python
pyqt5 tablewidget 利用线程动态刷新数据的方法
Jun 17 Python
python画双y轴图像的示例代码
Jul 07 Python
Python3+Requests+Excel完整接口自动化测试框架的实现
Oct 11 Python
python tornado修改log输出方式
Nov 18 Python
Python tornado上传文件的功能
Mar 26 Python
Python selenium文件上传下载功能代码实例
Apr 13 Python
Python pathlib模块使用方法及实例解析
Oct 05 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
PHP 文件上传源码分析(RFC1867)
2009/10/30 PHP
php结合表单实现一些简单功能的例子
2011/06/04 PHP
ThinkPHP CURD方法之field方法详解
2014/06/18 PHP
Yii中实现处理前后台登录的新方法
2015/12/28 PHP
PHP实现统计代码行数小工具
2019/09/19 PHP
laravel dingo API返回自定义错误信息的实例
2019/09/29 PHP
jQuery 创建Dom元素
2010/05/07 Javascript
原生js结合html5制作小飞龙的简易跳球
2015/03/30 Javascript
jQuery实现响应鼠标背景变化的动态菜单效果代码
2015/08/27 Javascript
原生JavaScript实现异步多文件上传
2015/12/02 Javascript
ES6新特性之数组、Math和扩展操作符用法示例
2017/04/01 Javascript
VueJS组件之间通过props交互及验证的方式
2017/09/04 Javascript
React 使用browserHistory项目访问404问题解决
2018/06/01 Javascript
解决vue keep-alive 数据更新的问题
2018/09/21 Javascript
[00:34]拔城逐梦,热血永恒!2020(秋)完美世界城市挑战赛报名开启
2020/10/09 DOTA
Python入门及进阶笔记 Python 内置函数小结
2014/08/09 Python
Django中模型Model添加JSON类型字段的方法
2015/06/17 Python
Python抓取框架Scrapy爬虫入门:页面提取
2017/12/01 Python
Python实现的读取电脑硬件信息功能示例
2018/05/30 Python
Django model 中设置联合约束和联合索引的方法
2019/08/06 Python
Python 实现Numpy中找出array中最大值所对应的行和列
2019/11/26 Python
Python二次规划和线性规划使用实例
2019/12/09 Python
Python和Sublime整合过程图示
2019/12/25 Python
Python测试线程应用程序过程解析
2019/12/31 Python
python中查看.db文件中表格的名字及表格中的字段操作
2020/07/07 Python
python批量生成身份证号到Excel的两种方法实例
2021/01/14 Python
Python实现疫情地图可视化
2021/02/05 Python
国际旅客访问北美最大的汽车租赁提供商:Alamo Rent A Car
2018/06/13 全球购物
加拿大服装和鞋类零售商:Mark’s
2021/01/04 全球购物
食品安全汇报材料
2014/08/18 职场文书
超市工作总结范文2014
2014/12/19 职场文书
单位委托函范文
2015/01/29 职场文书
个人承诺书格式范文
2015/04/29 职场文书
交通处罚决定书
2015/06/24 职场文书
在Centos 8.0中安装Redis服务器的教程详解
2022/03/21 Redis
Android学习之BottomSheetDialog组件的使用
2022/06/21 Java/Android