【问题标题】:Nested While Loop with Python使用 Python 嵌套 While 循环
【发布时间】:2015-10-28 15:53:12
【问题描述】:

我想用 Python 构建如下表。

0 1 2 3 4 5 6
1 2 3 4 5 6 7
2 3 4 5 6 7 8
3 4 5 6 7 8 9
4 5 6 7 8 9 10
5 6 7 8 9 10 11
6 7 8 9 10 11 12

代码是这样的

i = 0
j = 0
total = 6

while j <= total:
    while i <= total:
        print(i, "\t", end="")
        i += 1
        print("")
    j += 1

我得到一个错误“unindent 不匹配任何外部缩进级别”,它说“j += 1”是错误的。我使用 Sublime Text 3 作为我的 IDE。请告诉我出了什么问题以及如何解决?

【问题讨论】:

  • 缩进可能是与您的文本编辑器相关的问题。它与我的电脑一起工作。但是,你的循环是错误的,你不会得到预期的结果。此外,您的代码根本不是 pythonic。您应该考虑使用单个循环 for... in range(x, y) 来代替。
  • 当你弄清楚你的缩进时,你可能会尝试在第二次打印中打印 i 和 j,你可能会看到一些有趣的东西
  • 你能用“while way”纠正我的循环吗?谢谢。

标签: python loops while-loop nested


【解决方案1】:

您使用的是哪个 IDE?回想一下 Python 对间距很敏感,并回想一下“缩进”实际上不是制表符,它们正好是四个空格(不多不少)。因此,我会确认您的 IDE 已相应设置,并且可能尝试手动将您的项目间隔开。

【讨论】:

  • 我在 Windows 上使用 Sublime Text 3。感谢您的帮助。
  • @torinchien 我对那个编辑器不太了解,但我会检查以确保 Tab 设置设置为 4 个空格。我认为大多数文本程序的默认值是 5?这样的设置肯定会导致你描述的错误
  • @JimBeam 看看你的编辑器的右下角。您应该会看到类似 Tab 和 Python 的内容。单击 Tab 并将其更改为 4 个空格。可能有一个设置可以为所有 Python 文件更改此设置。
猜你喜欢
  • 1970-01-01
  • 2023-03-06
  • 1970-01-01
  • 1970-01-01
  • 2011-02-19
  • 1970-01-01
  • 1970-01-01
  • 2020-10-09
  • 2015-04-16
相关资源
最近更新 更多