输入一个正整数后,怎么用For loop输出一个n行的三角形呢?像下面这样
0
1 0
0 1 0
1 0 1 0
……
a=[]
for i in range(5):
if i==0:
a.append(i)
elif i%2==0:
a.insert(0,0)
else:
a.insert(0,1)
for i in a:
print(i,end=' ')
print()
我尝试写了一下,能print出你想要的三角,但是每行是以列表的形式体现的,就是每个数字中间都有逗号,每行开头和结尾都是中括号,而且代码也比较冗长,如果觉得可以,我觉得还能在用函数封装一下,就看你啦
number = [0]
n = int(input('请输入层数:'))
if n == 1 :
print(number)
elif n == 2 :
print(number)
number.insert(0 , 1)
print(number)
elif n > 1 :
if n % 2 == 1 :
for i in range (0 , n // 2) :
print (number)
number.insert(0 , 1)
print(number)
number.insert(0 , 0)
print(number)
elif n % 2 == 0 :
for i in range (0 , n// 2) :
print(number)
number.insert(0 , 1)
print(number)
number.insert(0 , 0)