def main():

print("五子棋游戏".center(50,'='))

guige=int(input("请输入棋盘的规格:"))

#按照五子棋的棋盘样式,画出棋盘

print_init(guige)

# 初始化棋盘

wzq = {}

for i in range(1, guige + 1):

for j in range(1, guige + 1):

wzq[(i, j)] = "+"

#重画棋盘

reprint(guige,wzq)

#按照五子棋的棋盘样式,画出棋盘

def print_init(guige):

#打印出首行的棋盘列

for i in range(guige):

print("%4d"%(i+1),end='')

print()

#双重循环,第一重为棋盘的行,隔一行输出棋盘的行数

for i in range(guige*2-1):

#打印出类似 “1 +---+---+---+---+---+”,行号,+,—

if(i%2==0):

print("%-3d"%((i+2)/2),end='')

#第二重循环,为棋盘的列,主要在于找出对应位置显示的内容

for j in range(guige * 4 - 3):

if (j % 4 == 0):

print("+", end='')

else:

print("-", end='')

#打印出类似“ | | | | | |”

else:

print("%3s"%' ',end='')

for j in range(guige*4-3):

if(j%4==0):

print("|",end='')

else:

print(" ",end='')

#每行输出完成之后换行

print()

#重画棋盘,对双方下子进行重画

def reprint(guige,wzq):

for i in range(guige*guige) :

if i % 2 == 0:

xuanshou = "X"

else:

xuanshou = "O"

# 双方轮流下棋

while 1:

print("现在轮到%s方落子" % xuanshou)

position = input("请输入落子位置:")

x_position = int(position.split()[0])

y_position = int(position.split()[1])

#判断输入的位置是否有子,有子一直输入,直到输入的位置无子

if wzq[(x_position, y_position)] in ["X", "O"]:

print("您输入的位置有子,请重新输入!")

else:

break

if wzq[(x_position, y_position)]=="+":

#重画棋盘

wzq[(x_position, y_position)] = xuanshou

for i in range(guige):

print("%4d"%(i+1),end='')

print()

五子棋python设计心得_python五子棋游戏的设计与实现相关推荐

  1. 基于Python的人机博弈象棋游戏的设计与实现

    源码获取:https://www.bilibili.com/video/BV1Ne4y1g7dC/ 基于Python的人机博弈象棋游戏的设计与实现

  2. 基于Python的水母吃鱼游戏的设计与实现

    源码获取:https://www.bilibili.com/video/BV1Ne4y1g7dC/ 基于Python的水母吃鱼游戏的设计与实现

  3. java课程设计拼图_java拼图游戏课程设计报告

    java拼图游戏课程设计报告 砾寸椒涩藕矾糯陋捕炬洁困喘港划舟逃豺涌锤芳喜胺递龚乏埔跺摩实阿信颊立蹲稿船纽臃瘪自康嘱脖究绢术拱虑犹犀棉宜炙转鸦半甘哨疗墓暑蛊渤幽峭咀豺虫拘召饭莽畜穗篷姿钟逻捞跨瀑拿丈土 ...

  4. 通灵学院|游戏设计研习8:游戏空间设计★(800字)

    通灵学院|研习8:游戏空间设计★ 本文为暗夜琉璃NightRuri原创,侵权必究. 往期研习: 研习1:人类的需求与动机 研习2:人类的外在人群特征 研习3:人类的内在人群特征 研习4:游戏体验发生于 ...

  5. 场景设计在次时代游戏主流设计,必将引领游戏行业进入崭新的时代

    次世代游戏场景设计的几个特点 场景设计在次时代游戏开发中是主流设计,它必将引领游戏行业进入崭新的时代.与传统的游戏场景相比较,次时代游戏场景不论是对硬件的要求上还是人们对于极致画面追求上都提出了更高的 ...

  6. c语言程序设计课程设计心得体会,C语言课程设计的心得体会

    C语言课程设计的心得体会范文1 通过这次c语言的课程设计,我明白了很多也知道了很多,更收获了很多.在课程设计的过程中出现过困难, 三周的课程设计已经结束了.回想学习c语言的过程中,既有快乐又有烦恼, ...

  7. python五子棋人机对战_Python:游戏:五子棋之人机对战

    原标题:Python:游戏:五子棋之人机对战 开端 画棋盘 首先肯定是要画出棋盘来,用 pygame 画出一个 19 × 19 或 15 × 15 的棋盘并不是什么难事,这在之前的文章中已经多次用到, ...

  8. python五子棋人机对战_Python五子棋

    # 五子棋 #!/usr/bin/python from Tkinter import * import random class snake(Frame): def __init__(self, m ...

  9. python棋类程序_python棋类游戏编写入门

    刚接触棋类游戏程序编写的朋友,往往比较迷惑,不知从何下手. 本文总结了棋类游戏的主程序流程.计算机走子策略.打分方式(以井字棋.黑白棋.五子棋为例),未使用minimax算法,比较简单,适合刚接触的朋 ...

最新文章

  1. 【一语点醒梦中人】如何优雅地合并两个JSON对象 → Object.assign(a, b)和Object.assign({}, a, b)的区别
  2. android aidl文件分析
  3. MPLS 企业组网有哪些特性?——Vecloud
  4. python 正则 去除字符串中异常字符
  5. 盘点8个数据分析相关的Python库(实例+代码)
  6. docker swarm
  7. python唯美壁纸_Python爬虫教程-爬取5K分辨率超清唯美壁纸源码
  8. 第3.1~3.3节《合成孔径雷达成像原理-皮亦鸣》
  9. 不改一行代码,快速迁移 Laravel 应用上云
  10. 台式/笔记本无线网卡_异常问题
  11. Tkinter模块GUI界面化编程实战(七)——人机对战五子棋(含超详解及完整源码、完整程序免费下载链接)
  12. [计算机网络]第二章——应用层
  13. java---implements
  14. MACD判断定背离,底背离
  15. 常用单片机编程思想及例程2——串口接收断帧
  16. RF+APPIUM详细使用教程
  17. 于我,过去,现在以及未来
  18. Facebook广告怎么投放?脸书广告的展现形式是怎么样的?
  19. 模仿游戏中台词计算机,《模仿游戏》经典台词大全
  20. ArcGIS——第八届全国 GIS 应用技能大赛(下午)

热门文章

  1. linux 文件系统 dfs,分布式文件系统fastDFS 机器硬件要求
  2. c语言变量名s_i使其随i变化,动态规划I(含细c语言代码).ppt
  3. css3动画与@keyframes关键帧
  4. java对图像的解压_java – 将图像解压缩到blobstore中
  5. 动态口令 java_java动态口令登录实现过程详解
  6. mysql如何重复_mysql 处理重复数据
  7. win7查看隐藏文件_Win8系统查看隐藏文件的操作方法是什么?
  8. linux在生活中的应用例子,LINUX操作系统在教师学生日常生活中的应用(全).docx
  9. 修改服务器时间需要重启吗,云服务器需要定期重启吗
  10. 设置不显示用户名和主机名_谁说Excel中不可以有聚光灯效果:Excel高亮显示设置...