数独是一个很好玩的游戏,可以锻炼推理能力。下面的代码可以自动生成数独游戏题目。

from random import shuffle, randrange

def generate():

# 初始网格

result = []

line = list(range(1,10))

for i in range(9):

result.append(line)

line.append(line.pop(0))

# 注意,这里的切片很重要

line = line[:]

# Python允许函数的嵌套定义

def switchRows(first, second):

# 这里的括号和换行不是必须的

# 只是为了方便手机阅读

(result[first],

result[second]) =\

(result[second],

result[first])

def switchColumns(first, second):

for index in range(9):

(result[index][first],

result[index][second]) =\

(result[index][second],

result[index][first])

# 随机交换行

randomRows = list(range(9))

shuffle(randomRows)

for i in range(0,7,2):

switchRows(randomRows[i],\

randomRows[i+1])

# 随机交换列

randomColumns = list(range(9))

shuffle(randomColumns)

for i in range(0,7,2):

switchColumns(randomColumns[i],\

randomColumns[i+1])

# 随机清空一些格子

num = randrange(25, 50)

positions = {(randrange(9),randrange(9))\

for i in range(num)}

for row, col in positions:

result[row][col] = ' '

return result

def output(grids):

print('+'+'-+'*9)

for row in range(9):

line = '|'.join(map(str,grids[row]))

line = line.join(['|']*2)

print(line)

print('+'+'-+'*9)

grids = generate()

output(grids)

运行结果一:

运行结果二:

运行结果三:

欢迎加入本站公开兴趣群

软件开发技术群

兴趣范围包括:Java,C/C++,Python,PHP,Ruby,shell等各种语言开发经验交流,各种框架使用,外包项目机会,学习、培训、跳槽等交流

QQ群:26931708

Hadoop源代码研究群

兴趣范围包括:Hadoop源代码解读,改进,优化,分布式系统场景定制,与Hadoop有关的各种开源项目,总之就是玩转Hadoop

QQ群:288410967

python数独游戏源代码_使用Python编写数独游戏自动出题程序相关推荐

  1. python漂亮界面 数独游戏源代码_使用Python编写数独游戏自动出题程序

    原标题:使用Python编写数独游戏自动出题程序 数独是一个很好玩的游戏,可以锻炼推理能力.下面的代码可以自动生成数独游戏题目. fromrandom importshuffle, randrange ...

  2. python抢购火车票源代码_用Python抢过年的火车票附源码

    前言:大家跟我一起念,Python大法好,跟着本宝宝用Python抢火车票 首先我们需要splinter 安装: pip install splinter -i http://pypi.douban. ...

  3. 用python模拟评委打分_用vb 编写一个评委打分的程序1. 编写一个评委打分的程序,实现以下功能:a) 单击“评委给分”按钮时弹出InputBo...

    共回答了20个问题采纳率:80% Dim a(10) As Integer Private Sub Command1_Click() For i = 1 To 10 a(i) = InputBox(& ...

  4. python炫酷动画源代码_python_红心大战游戏源代码_满分原创作业

    [实例简介] python编写红心大战游戏,满分作业,音效动画传牌等效果酷炫. [实例截图] [核心代码] python_红心大战游戏源代码_满分原创作业 └── python_红心大战游戏_满分原创 ...

  5. Python版基于pygame的玛丽快跑小游戏源代码,玛丽冒险小游戏代码,支持双人模式

    基于pygame的玛丽快跑小游戏源代码,玛丽冒险小游戏代码,支持双人模式 按空格进入单人模式,按't'进入双人模式,双人模式下玛丽1采用空格键上跳,玛丽2采用方向上键上跳. 完整代码下载地址:Pyth ...

  6. 单机版斗地主游戏源代码,纯JS编写的斗地主单机版小游戏源代码

    单机版斗地主游戏源代码,纯JS编写的斗地主单机版小游戏源代码,下载游戏后,直接运行index.html即可. 完整代码下载地址:单机版斗地主游戏源代码 index.html <!DOCTYPE ...

  7. HTML趣味钢琴小游戏源代码,钢琴琴谱练习小游戏源代码

    HTML趣味钢琴小游戏源代码,钢琴琴谱练习小游戏源代码 完整代码下载地址:HTML趣味钢琴小游戏源代码,钢琴琴谱练习小游戏源代码 index.html <!DOCTYPE html> &l ...

  8. python可以数独游戏吗_学习python编程如何一键做出数独游戏答案 | k12教育网

    在学习python编程如何一键做出数独游戏答案之前,我们需要知道什么是Python? Python指的是Python编程语言(用于编写被认为是有效Python代码的语法规则)和Python解释器软件, ...

  9. python编写赛车游戏单机版_使用Python中OrderedDict模拟一个简单的竞速游戏排名

    上一篇,我们梳理了Python中关于字典排序的一些常用方法(杂乱无章的数据结构如何进行排序,简明讲述Python字典排序那些事).其中,我们讲到了Python的collections模块中的Order ...

最新文章

  1. 二叉树代码我写得很乱!!!整理一下思路
  2. 【Android】Uri、UriMatcher、ContentUris详解
  3. textrank4zh是_GitHub - renxiaowei941015/TextRank4ZH: 从中文文本中自动提取关键词和摘要...
  4. Request_继承体系
  5. 关于java的响应式编程框架----SpringReactor
  6. 【渝粤题库】国家开放大学2021春1377理工英语3题目
  7. c语言指针++_C ++此指针| 查找输出程序| 套装1
  8. 容器编排技术 -- 使用kubectl实现应用滚动更新
  9. 网站前端开发基础知识学什么?必备技能
  10. WP7基础学习---第一讲
  11. 泛型与容器连载(一)泛型的基本概念和原理
  12. 设置为自动获得IP地址,如何查看当前的IP地址
  13. 在C#中IEnumerable与IEnumerator
  14. 实体框架 6.0:异步、IQueryable操作符和特性改进
  15. 基于SSM的大学生兼职平台
  16. 数据结构--栈-C语言实现迷宫求解
  17. [Android] 选项卡组件TabHost
  18. 简单的HTML5音乐播放器带歌词滚动,基于jQuery实现歌词滚动版音乐播放器的代码...
  19. 浅谈人脸识别技术原理分析
  20. 江西省九江市瑞昌市高考成绩查询2021,2021江西省地区高考成绩排名查询,江西省高考各高中成绩喜报榜单...

热门文章

  1. java继承与实现的_[Java学习] Java继承的概念与实现
  2. LeetCode两数之和 56 python
  3. OpenCASCADE :VTK集成服务(VIS) 之使用低级 API
  4. boost::timer模块检查在同一程序中使用 Chrono 和 Timer 不会导致链接错误
  5. boost::rational模块相关的测试程序
  6. boost::replace_copy_if相关的测试程序
  7. boost::multiprecision模块cpp_bin_float_100相关的测试程序
  8. boost::mp11::mp_nth_element_q相关用法的测试程序
  9. boost::log::keywords::format用法的测试程序
  10. boost::posix_time模块实现本地时间和 UTC 之间的转换的测试程序