高中生学python编程基础知识(3)

  • A+
所属分类:高中编程

 

列表和Tic Tac Toe游戏 - 学习使用Python 3编程(基础知识)

欢迎阅读Python3基础知识教程的第3部分。在这个视频中,我们将开始解决一个真正的挑战:创建一个TicTacToe游戏!

TicTacToe游戏虽然对我们来说很容易理解,但在编码时我们面临着相当多的挑战。比如显示游戏的棋盘,允许玩家输入动作,更新游戏板,检测胜利者等等。除此之外,我们还必须考虑可能出现问题的地方,比如玩家试图在其他人已经玩过的地方玩游戏,或者在不存在的地方玩游戏,等等!

正如你现在可能已经意识到的那样,尽管TicTacToe非常简单,但是当我们在一张纸上玩时,我们必须处理和处理许多较小的错综复杂的错误。对于任何这样的任务,有许多事情要做,我们需要在我们的头脑或一些笔记中分解整个目标。在这种情况下,我们知道我们需要一些基本的东西:

以某种方式可视化游戏

允许玩家进入移动

确保移动有效,如果没有则处理。

确定是否有赢家。

高中生学python编程基础知识(3)

我们可以按顺序处理这些,所以让我们从#1开始。我们如何想象这块板?我建议,首先,我们只使用列表。在这种情况下,列表列表。之后,我们可以将这些列表列表转换为更漂亮的东西,但是对于我们来说,这对我们来说更有意义,同时对它进行编程以保持程序理解。

那么我们如何定义我们的游戏地图呢?我们可以从尝试类似的事情开始:

game = (0, 0, 0,= (0, 0, 0,
        0, 0, 0,0, 0, 0,
        0, 0, 0)0, 0, 0)

显然这是一个3x3网格,对吧?够容易!

好吧,那里不是那么快,让我们把它打印出来:

print(game)(game)
(0, 0, 0, 0, 0, 0, 0, 0, 0)0, 0, 0, 0, 0, 0, 0, 0, 0)
>>> >>>

此外,这是一个元组,所以它是不可变的,我们不能随着时间的推移改变它。因此,我们将使用列表!

game = [0, 0, 0,= [0, 0, 0,
        0, 0, 0,0, 0, 0,
        0, 0, 0]0, 0, 0]

print(game)print(game)
[0, 0, 0, 0, 0, 0, 0, 0, 0]0, 0, 0, 0, 0, 0, 0, 0, 0]
>>> >>>

仍然不是我们想要的。我们将其转换为列表列表。

game = [[0, 0, 0],= [[0, 0, 0],
        [0, 0, 0],[0, 0, 0],
        [0, 0, 0]][0, 0, 0]]

print(game)print(game)
[[0, 0, 0], [0, 0, 0], [0, 0, 0]]0, 0, 0], [0, 0, 0], [0, 0, 0]]
>>> >>>

仍然持平,但我们可以看到他们现在显然是3组。我们如何将这些分开?你可能会问...howmightweiterateoverthese?。啊,一个for循环!

game = [[0, 0, 0],= [[0, 0, 0],
        [0, 0, 0],[0, 0, 0],
        [0, 0, 0]][0, 0, 0]]

for row in game:for row in game:
    print(row)print(row)
[0, 0, 0]0, 0, 0]
[0, 0, 0][0, 0, 0]
[0, 0, 0][0, 0, 0]
>>> >>>

现在我们正在取得进步!我想我们已经开始了我们的游戏板。所以我现在的想法是0意味着没有人在那里玩过,那么我们将使用数字1代表玩家1而数字2代表玩家2.后来,我们可以进入并使用这个列表列表来生成更漂亮的游戏的版本,但是,现在,这个逻辑应该运作良好。

所以我们有一个游戏板,下一步是什么?我们需要某种方式让玩家玩。这一步有两个部分。一部分是确定用户想要玩的确切位置,另一部分实际上是在游戏棋盘上标记该位置。在下一个教程中,我们将介绍如何从用户确定他们希望播放的位置。

发表评论

您必须才能发表评论!