Python中的重复 - 直到或等效循环

Acc*_*san 16 python loops

我是Python编程的初学者.我正在尝试使用格雷厄姆扫描方法找到凸包的算法.但是,在伪代码中,有一个repeat ... until循环,我无法想出用Python编写它的方法.

如何repeat ... until在Python中编写循环?

Joh*_*ooy 54

REPEAT
    ...
UNTIL cond
Run Code Online (Sandbox Code Playgroud)

相当于

while True:
    ...
    if cond:
        break
Run Code Online (Sandbox Code Playgroud)

  • @snr,当 `cond` 为真时,两个循环都退出 (10认同)
  • @Robin 这种混淆很好地说明了 `while cond do {}` 和 `repeat {} Until cond` 循环之间的常见混淆。while 循环*只要*其条件为“True”就会继续,repeat 循环将继续*直到*其条件为“True”。@snr 是错误的,但这是一个常见的错误。比较:`while Must_Continue: command` 和 `while True: command; 如果不是必须继续:break`。您可以使用“repeat”执行相反的操作,但您永远不会看到这些示例,因为具有“repeat”的语言通常也有“while”。 (7认同)
  • @Robin:第一个评论确实是错误的。 (3认同)
  • `if cond` 是错误的。对于 Python 必须是 `if not cond`,对于 Java、C、C++ 必须是 `if !(cond)` (2认同)