for loop python print

时间:2017-06-13 15:12:54

标签: python python-2.7

以下是代码:

start = 1
end = 3
a = "one"
b = "two"
for x in range(start, end + 1):
    print a
    print b
    print b
    print b

输出:

one
two
two
two
one
two
two
two
one
two
two
two

期望的输出:

one
two
two
two
two
one
one
one
one
two
two
two

有人请帮助我获得所需的输出

第一次打印a,然后打印三次b,第二次打印b,然后打印三次,第三次打印a,然后打印三次b等等

2 个答案:

答案 0 :(得分:4)

所以,基本上你想要a和b在后续迭代中切换位置。只需添加:

a, b = b, a

在你的循环结束......

答案 1 :(得分:0)

基本上你正在做的是创建一个循环来运行打印a的代码,然后是b三次。然后,该代码在循环运行时重复多次。你可以做的是使用一个在每个循环后在true和false之间变化的布尔值。

start = 1
end = 3
a = "one"
b = "two"
Start_A = True
for x in range(start, end + 1):
if Start_A == True:
    print a
    print b
    print b
    print b
    Start_A = False
elif Start_A == False:
    print b
    print a 
    print a
    print a
    Start_A = True

这样的东西会产生你想要的输出。