欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python實(shí)現(xiàn)雙人五子棋(終端版)

 更新時(shí)間:2020年12月30日 14:23:47   作者:Miku丨無形  
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)終端版的雙人五子棋,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

五子棋還是有很多大佬發(fā)的,今天我也發(fā)一篇萌新寫的小五子棋,這個(gè)是終端版的,如果有問題請大家指出,我去修改

代碼如下:

screen = []
screen_change=0

def into():#初始空白棋盤
 for i in range(screen_change):
 list_width=[]
 for j in range(screen_change):
 list_width.append(' '+' |')
 screen.append(list_width)

def user_black():
 while True:
 coordinate = input("黑方請輸入你想填下子的坐標(biāo) 例1,2或者5,5")
 coordinate=coordinate.split(',')
 width_num = int(coordinate[0]) - 1
 high_num = int(coordinate[1]) - 1
 if screen[width_num][high_num][1]!=' ':
 print('你輸入的地方已經(jīng)有棋子了,請重新輸入')
 continue
 screen[width_num][high_num] = ' ' + '@' + ' |'
 break
 screen_print()

def user_white():
 while True:
 coordinate = input("白方請輸入你想填下子的坐標(biāo) 例1,2或者5,5")
 coordinate = coordinate.split(',')
 width_num = int(coordinate[0]) - 1
 high_num = int(coordinate[1]) - 1
 if screen[width_num][high_num][1] != ' ':
 print('你輸入的地方已經(jīng)有棋子了,請重新輸入')
 continue
 screen[width_num][high_num] = ' ' + '#' + ' |'
 break
 screen_print()

def eeferee():#判斷輸贏
 #判斷行
 for i in range(screen_change):
 for j in range(screen_change-4):
 if screen[i][j][1]==screen[i][j+1][1]==screen[i][j+2][1]==screen[i][j+3][1]==screen[i][j+4][1] and screen[i][j][1]!=' ':
 return False
 for i in range(screen_change - 4):
 for j in range(screen_change):
 if screen[i][j][1]==screen[i+1][j][1]==screen[i+2][j][1]==screen[i+3][j][1]==screen[i+4][j][1] and screen[i][j][1]!=' ':
 return False
 for i in range(screen_change - 4):
 for j in range(screen_change - 4):
 if screen[i][j][1]==screen[i+1][j+1][1]==screen[i+2][j+2][1]==screen[i+3][j+3][1]==screen[i+4][j+4][1] and screen[i][j][1]!=' ':
 return False
 for k in range(4,screen_change):
 if k>=4:
 if screen[i][k][1] == screen[i+1][k-1][1] == screen[i+2][k-2][1] == screen[i+3][k-3][1] == screen[i+4][k-4][1] and screen[i][k][1] != ' ':
  return False
 return True

def screen_print():#打印棋盤
 print('——' * (screen_change*3+1))
 for i in range(screen_change):
 print('|',end=' ')
 for j in range(screen_change):
 print(screen[i][j],end=' ')
 print()
 print('——'*(screen_change*3+1))

def main():
 global screen_change
 screen_change = int(input('請輸入你設(shè)定的棋盤大小:'))
 into()
 screen_print()
 while eeferee():
 user_black()
 if not eeferee():
 break
 user_white()
 print('游戲結(jié)束')

if __name__=='__main__':
 main()

效果圖如下:

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python實(shí)現(xiàn)刪除重復(fù)視頻文件的方法詳解

    Python實(shí)現(xiàn)刪除重復(fù)視頻文件的方法詳解

    這篇文章主要為大家詳細(xì)介紹了如何利用Python實(shí)現(xiàn)刪除重復(fù)視頻文件功能,文中的示例代碼講解詳細(xì),對我們學(xué)習(xí)Python有一定幫助,需要的可以參考一下
    2022-10-10
  • python實(shí)現(xiàn)可下載音樂的音樂播放器

    python實(shí)現(xiàn)可下載音樂的音樂播放器

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)可下載音樂的音樂播放器,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-02-02
  • Python運(yùn)行報(bào)錯(cuò)UnicodeDecodeError的解決方法

    Python運(yùn)行報(bào)錯(cuò)UnicodeDecodeError的解決方法

    本文給大家分享的是在Python項(xiàng)目中經(jīng)常遇到的關(guān)于編碼問題的一個(gè)小bug的解決方法以及分析方法,有相同遭遇的小伙伴可以來參考下
    2016-06-06
  • Python操作SQLite數(shù)據(jù)庫的方法詳解【導(dǎo)入,創(chuàng)建,游標(biāo),增刪改查等】

    Python操作SQLite數(shù)據(jù)庫的方法詳解【導(dǎo)入,創(chuàng)建,游標(biāo),增刪改查等】

    這篇文章主要介紹了Python操作SQLite數(shù)據(jù)庫的方法,簡單說明了sqlite數(shù)據(jù)庫的相關(guān)概念,并結(jié)合實(shí)例形式較為詳細(xì)的分析了Python針對sqlite數(shù)據(jù)庫的導(dǎo)入,創(chuàng)建,游標(biāo),增刪改查等操作技巧,需要的朋友可以參考下
    2017-07-07
  • OpenCV連通域數(shù)量統(tǒng)計(jì)學(xué)習(xí)示例

    OpenCV連通域數(shù)量統(tǒng)計(jì)學(xué)習(xí)示例

    這篇文章主要為大家介紹了OpenCV連通域數(shù)量統(tǒng)計(jì)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-06-06
  • 教你用Python實(shí)現(xiàn)短信驗(yàn)證碼的發(fā)送

    教你用Python實(shí)現(xiàn)短信驗(yàn)證碼的發(fā)送

    當(dāng)我們在注冊一個(gè)網(wǎng)頁時(shí),有的網(wǎng)頁會(huì)讓必須要短信驗(yàn)證、郵箱驗(yàn)證,才可以進(jìn)行賬號(hào)的注冊,下面這篇文章主要給大家介紹了關(guān)于用Python實(shí)現(xiàn)短信驗(yàn)證碼發(fā)送的相關(guān)資料,需要的朋友可以參考下
    2022-12-12
  • Django中反向生成models.py的實(shí)例講解

    Django中反向生成models.py的實(shí)例講解

    今天小編就為大家分享一篇Django中反向生成models.py的實(shí)例講解,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-05-05
  • Python面向?qū)ο缶幊讨^承與多態(tài)詳解

    Python面向?qū)ο缶幊讨^承與多態(tài)詳解

    這篇文章主要介紹了Python面向?qū)ο缶幊讨^承與多態(tài),結(jié)合實(shí)例形式詳細(xì)分析了Python面向?qū)ο缶幊讨欣^承與多態(tài)的概念、使用方法及相關(guān)注意事項(xiàng),需要的朋友可以參考下
    2018-01-01
  • Python3遠(yuǎn)程監(jiān)控程序的實(shí)現(xiàn)方法

    Python3遠(yuǎn)程監(jiān)控程序的實(shí)現(xiàn)方法

    今天小編就為大家分享一篇Python3遠(yuǎn)程監(jiān)控程序的實(shí)現(xiàn)方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-07-07
  • Python?全局空間和局部空間

    Python?全局空間和局部空間

    這篇文章主要介紹了Python?全局空間和局部空間,命名空間的概念的提出是為了劃分和控制變量是否可見,以及生存周期的長短;命名空間的作用范圍叫做作用域更多詳細(xì)內(nèi)容需要的小伙伴可以參考一下
    2022-04-04

最新評論