打印字母金字塔(python实现)
打印一个如图所示的 可自定义规模 的金字塔:
思路:
整个过程分为两部分:
第一部分:分行打印(第一个,也就是最外层的for循环)。
第二部分:打印当前行,从左至右分为三段:
第一段:空格部分(代码中的第一个内层for循环)
第二段:倒序字母部分(代码中的第二个内层for循环)
第三段:正序字母部分(代码中的第三个内层for循环)
ps:中间的 ’A‘ ,放在第二或第三段皆可,本文给出的代码将 ’A‘ 放在了第二段(代码中的第二个内层for循环)
代码如下:
a = input('请输入一个大写字母:')
list1=list('ABCDEFGHIJKLMNOPQRSTUVWXYZ') #正序输出的部分存放在list1中
index = list1.index(a)
for i in range(0,index+1): #分行打印开始,根据索引值判断行数
for j in range(index-i): #打印空格部分,数量为索引值减1
print(' ',end='')
for k in range(1): #打印倒序输出部分(含A)
code_left = ''.join(list1[i::-1]) #列表转换字符串类型 倒序输出,从索引值为i(index)开始,到0(即'A')结束
print(code_left,end='')
for l in range(1): #打印正序输出部分(不含A)
code_right = ''.join(list1[1:i+1]) #列表转换字符串类型 从索引值为1的元素开始,到索引值为i(index)结束
print(code_right,end='')
print('')