如何使用while循环和for循环编码此模式?

时间:2018-07-08 03:14:52

标签: python-3.x

我应该对此模式进行编码:

[1]
[0][0]    
[1][1][1]  
[0][0][0][0] 
[1][1][1][1][1]  
[0][0][0][0][0][0]
[1][1][1][1][1][1][1]          
[0][0][0][0][0][0][0][0]         
[1][1][1][1][1][1][1][1][1] 

但是,我只能给出这样的输出:

[1]    
[0][0]
[1][1][1] 
[0][0][0][0] 
[1][1][1][1][1]    
[0][0][0][0][0][0]     
[1][1][1][1][1][1][1]
[0][0][0][0][0][0][0][0]
[1][1][1][1][1][1][1][1][1] 
[0][0][0][0][0][0][0][0][0][0]

这是我当前的代码:

a = '[1]'
b = '[0][0]'

for c in range(1,10,2):
    print(a)
    a = a + '[1][1]'
    print(b)
    b = b + '[0][0]'

请帮助!我应该有一个while循环和for循环的模式。预先感谢!

1 个答案:

答案 0 :(得分:0)

您在每次迭代中都同时打印ab,因此自然不会在输出中得到奇数行。

相反,请使用正常范围为9的迭代器,并根据计数器的余数2在打印和追加到ab之间进行选择。

a = '[1]'
b = '[0][0]'

for c in range(9):
    if c % 2 == 0:
        print(a)
        a = a + '[1][1]'
    else:
        print(b)
        b = b + '[0][0]'

这将输出:

[1]
[0][0]
[1][1][1]
[0][0][0][0]
[1][1][1][1][1]
[0][0][0][0][0][0]
[1][1][1][1][1][1][1]
[0][0][0][0][0][0][0][0]
[1][1][1][1][1][1][1][1][1]