循环中的Python单行

时间:2016-05-01 02:21:16

标签: python python-3.x

在Python中,我试图在值小于另一个数字时使值变量增加。我知道可以for形式执行(print(x) for x in range(1, 5))循环。我的问题是,是否有类似方法在此表单中执行while循环,例如x += 1 while x < y

3 个答案:

答案 0 :(得分:1)

x = 0
y = 10
while x < y:
    x +=1

>>> x
10

嗯,你可以在一行中完成它,因为Python允许:

x = 0
while x < y: x +=1

它不具有可读性,并且不符合PEP 8,但它是可行的。

答案 1 :(得分:1)

你可以做这样的事情

n = 0 
while n < 1000: rn += n if not (n % 3 and n % 5) else 0

您所看到的是conditional expression但它的代价是可读性降低了

答案 2 :(得分:0)

您可以使用分号分隔每个语句,如此...

x = 0; y = 5 while(x < y): print(x); x=x+1