日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

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

發布時間:2024/9/27 python 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python数独游戏源代码_使用Python编写数独游戏自动出题程序 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

數獨是一個很好玩的游戲,可以鍛煉推理能力。下面的代碼可以自動生成數獨游戲題目。

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编写数独游戏自动出题程序的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。