要求以图的形式展示
思路:
用循环嵌套打印两个字符串,再将两个字符串合并,再用center函数将字符串居中
上总代码:
# coding:utf-8
hp=input()
for i in range(hp):
ar,pr='',''
for j in range(i,-1,-1):#逆序打印幂级数,(左边的字符串)
ar+=str(2**j)+' '
for j in range(i+1):#正序打印幂级数(右边的字符串)
pr+=' '+str(2**j)
pr=pr.strip(' 1')#这里是将右边的字符串中的‘ 1’这个和左边相同的元素删除,毕竟图片要求只有一个1
ar+=pr
print ar.center(50,' ')#50这个你可以改成一个随输入而变大的函数,比如hp*10
效果图: