python编程做游戏,python游戏编程入门
大家好,我是皮皮。
一、前言前几天在计算机编程语言最强王者交流群有个叫【克洛伊】的粉丝问了一个计算机编程语言小游戏的问题,这里拿出来给大家分享下,一起学习下。
二、解决过程看上去代码有报错,截图如下。
这个错误倒是很常见,因为数据类型不同,直接相加肯定报错,如果需要更改的话,那么需要转一下数据类型,这里【沈复】大佬给出了答案,如下图所示。
当然了,粉丝的代码残缺的太厉害了,少了5-7个函数,【月神】依次补充完整之后,总算可以进入游戏了,然后顺便找到了这个报错位置。
这里问题还是不少的,【月神】帮忙更新了下代码,如下:
defreplay():
key=input( Doyouwanttoplayagain?输入是或否:)
returnTrueifkey[0].upper()==YelseFalse
这样的话,就完美解决了。
最后分享下这个游戏的完整的代码给大家,感兴趣的小伙伴们可以玩玩看。
print(WelcometoTicTacToe!)
fromipython。显示导入清除输出
随机输入
defchoose_first():
ifrandom.randint(0,1)==0:
返回"播放器2"
否则:
返回"玩家1"
defplayer_input():
标记=
while not(marker== X 或marker== O ):
marker=input( DoyouwanttobeXorO?).上部()
ifmarker==X :
返回" x "
否则:
返回“哦”
defplayer_choice(棋盘):
位置=0
while位置notin[1,2,3,4,5,6,7,8,9]或notspace_check(板,位置):
position=int(input( Chooseyournextposition:(1-9):))
返回位置
defspace_check(板,位置):
returnboard[position]==
deffull_board_check(board):
foriinrange(1,10):
ifspace_check(board,I):
返回错误的
返回真
defreplay():
key=input( Doyouwanttoplayagain?输入是或否:)
returnTrueifkey[0].upper()==YelseFalse
定义位置标记(板、标记、位置):
纸板[位置]=标记
defwin_check(board,mark):
返回(
(board[1]==markandboard[2]==markandboard[3]==mark)或
(board[4]==markandboard[5]==markandboard[6]==mark)或
(board[7]==markandboard[8]==markandboard[9]==mark)或
(board[1]==markandboard[4]==markandboard[7]==mark)或
(board[2]==markandboard[5]==markandboard[8]==mark)或
(board[3]==markandboard[6]==markandboard[9]==mark)或
(board[1]==markandboard[5]==markandboard[9]==mark)或
(board[3]==markandboard[5]==markandboard[7]==mark)
)
defdisplay_board(板):
清除输出()
打印( )
print( board[7] board[8] board[9])
打印( )
打印(-)
打印( )
print( board[4] board[5] board[6])
打印( )
打印(-)
打印( )
print( board[1] board[2] board[3])
打印( )
whileTrue:
theBoard=[]*10
播放器_标记=播放器_输入()
播放器_标记=播放器_输入()
turn=choose_first()
打印(转“willgofirst”)
play _ game=input( Areyoureadytoplay?"是或不是?")
ifplay_game[0].lower()==y :
game_on=True
否则:
game_on=False
游戏开始时:
ifturn==Player1 :
显示板
位置=玩家选择(棋盘)
地点标记(棋盘,玩家1 _标记,位置)
ifwin_check(theBoard,player1_marker):
显示板
打印(恭喜!"你有馄饨!")
game_on=False
否则:
iffull_board_check(theBoard):
显示板
print(Thegameisadraw!)
破裂
否则:
turn=Player2
否则:
显示板
位置=玩家选择(棋盘)
地点标记(棋盘,玩家2 _标记,位置)
ifwin_check(theBoard,player2_marker):
显示板
print(Player2haswon!)
game_on=False
否则:
iffull_board_check(theBoard):
显示板
print(Thegameisadraw!)
破裂
否则:
turn=Player1
ifnotreplay():
破裂
三、总结大家好,我是皮皮。这篇文章主要分享了使用计算机编程语言编程打造一款小游戏,针对该问题给出了具体的解析和代码演示,帮助粉丝顺利解决了问题。
最后感谢粉丝【克洛伊】提问,感谢【沈复】、【月神】给出的具体解析和代码演示,感谢【dcpeng】、【冯诚】等人参与学习交流。
小伙伴们,赶紧练起来吧!如果你在学习过程中遇到了什么问题,请加我为好友,我会拉你进Python学习交流群,一起讨论学习。
原创作品来自的Python高级博主,
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。