题目:字母表--Alphabet Rangoli

题目要求:
给定一个整数n,打印一个字母Rangoli图案(Rangoli 是一种基于图案创作的印度民间艺术形式。)
解题代码:
def print_rangoli(size):
letters = 'abcdefghijklmnopqrstuvwxyz'
width = 4 * size - 3
upper = []
for i in range(size - 1):
left = [letters[size - 1 - j] for j in range(i + 1)]
right = left[:-1][::-1]
line = '-'.join(left + right).center(width, '-')
upper.append(line)
middle_line = []
if size > 0:
left = [letters[size - 1 - j] for j in range(size)]
right = left[:-1][::-1]
middle_line = ['-'.join(left + right)]
lower = upper[::-1]
full_pattern = upper + middle_line + lower
print('\n'.join(full_pattern))
if __name__ == '__main__':
n = int(input())
print_rangoli(n)
文章评论