当前位置: 代码迷 >> python >> 跳出循环?
  详细解决方案

跳出循环?

热度:54   发布时间:2023-06-16 14:05:49.0

我在学校上编程课,我们刚开始学习 python。 我们应该使用循环使我们的编码打印井字游戏板,但我不知道如何关闭循环并添加最后一行编码。 就我的编码而言,这是我所拥有的:

bob = '+----+----+----+'
joe = '|    |    |    |'
index = 0
while index < 3:
    print(bob)
    print(joe)
    print(joe)
    index = index + 1
print(bob)

(ps 下划线是编码中的制表符。)最后一行是我试图退出循环的行。 我已经研究过它,但我发现的一切都不起作用,我只是得到一个“语法错误:无效语法”。 有谁知道我如何学习如何解决这个问题?

您希望它看起来像这样:

bob = '+----+----+----+'
joe = '|    |    |    |'

index = 0

while index < 3:
    print(bob)
    print(joe)
    print(joe)
    index = index + 1

print(bob)

输出是:

+----+----+----+
|    |    |    |
|    |    |    |
+----+----+----+
|    |    |    |
|    |    |    |
+----+----+----+
|    |    |    |
|    |    |    |
+----+----+----+

您还可以使用范围来控制循环。 以下是等效的:

bob = '+----+----+----+'
joe = '|    |    |    |'

for index in range(3):
    print(bob)
    print(joe)
    print(joe)

print(bob)

这是一个更 Pythonic 的版本,你可以用它来打动你的老师;)

from itertools import cycle
bob = '+----+----+----+'
joe = '|    |    |    |'
board = '\n'.join([r for _, r in zip(range(10), cycle((bob, joe, joe)))])
print(board)

产生

+----+----+----+
|    |    |    |
|    |    |    |
+----+----+----+
|    |    |    |
|    |    |    |
+----+----+----+
|    |    |    |
|    |    |    |
+----+----+----+
  相关解决方案