休息时语法无效

时间:2018-06-16 17:00:20

标签: python

a = 0
dots = []
while True:
    a = c.find('.', a+1)
    print(a)
    dots.append(a) if (a != -1) else break

为什么这会在休息时返回无效的语法?

1 个答案:

答案 0 :(得分:0)

你不能那样使用conditional operator

可以写一些类似的东西:

is_even = True if x%2==0 else False
# or
result = foo() if should_call_foo else None

当您决定分配给变量的两个选项中的哪一个时。

但是break是一个控制声明,无法转到此处。

您可能想要使用传统的if / else方法,例如:

a = 0
dots = []
while True:
    a = c.find('.', a+1)
    print(a)
    if (a != -1):
        dots.append(a)
    else:
        break