Python 程序实验

请教各位怎么实现这个程序 刚刚接触Python 麻烦给我指点一下迷津

img

给个简单的解法,你参考一下吧:

code = 'abcdefghijklmnopqrstuvwxyz'
n = int(input("请输入一半的行数:"))
lst = []
for i in range(n*2-1):
    line = "-"*abs(n-1-i)*2+code[n-1]+'-'
    for j in range(i*2):
        line += code[abs(n-2-j)]+'-'  
    line += "-"*(abs(n-1-i)*2)
    lst.append(line[:-1])
    if i<n:
        print(lst[i])
    else:
        print(lst[n*2-i-2])

img


如有帮助,请采纳!


def run():
    import string
    letter = string.ascii_lowercase
    num = int(input("请输入一半的行数:"))  # 获取行数
    line_size = num * 2 * 2 - 3
    init_line_content = []
    for i in range(num - 1, -1, -1):
        el = letter[i]
        if len(init_line_content) == 0:
            init_line_content.append(el)
            continue
        old_el = init_line_content[num - i - 2]
        old_el_center = len(old_el) // 2
        init_line_content.append(f"{old_el[:old_el_center + 1]}-{el}-{old_el[old_el_center::-1]}")
    init_line_content.extend(init_line_content[-2::-1])
    for i in init_line_content:
        print(i.center(line_size, '-'))
    pass

img