使用Python实现的杨辉三角

本文介绍了一种使用Python实现杨辉三角的方法。该方法通过构建每一行的数据来形成完整的杨辉三角形,并详细展示了如何根据上一行数据生成下一行的过程。此外,还提供了打印杨辉三角的具体方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

def triangel():
    print ' '*(20*3)+str(1)             #定义起始两行
    print ' '*(19*3)+str(1)+' '*5+str(1)
    for i in range(3,21):
        if i ==3:
            L = [1,1]       #初始化第二行        
        L1 = []
        for j in range(2,i):
            z = L[i-j-1]+L[i-j] # 通过上一行构建下一层数据
            L1.append(z)        # 将数据添加到一个空列表中
        L = [1]       # 再次对L初始化
        L.extend(L1)    # 将两个列表合并
        L.append(1)     # 在L列表中添加最后一个数据“1”

        # 以下内容为杨辉三角的打印
        t = ' '*((21-i)*3)+str(1)   # 每次循环进行初始化每列的第一个数据1
        for h in range(1,len(L)):   # 以下为构建每列的除一个数据外的其他数据,
            if L[h]<10:             # 如果数据小于10,就是其前面5个空格,如果
                t = t + ' '*5+str(L[h]) #数据小于100,就减少一个空格,依次类推,
            elif L[h] <100:         # 直至剩余一个空格,用于分辨相邻的数据
                t = t+' '*4+str(L[h])
            elif L[h] < 1000:
                t = t + ' '*3+str(L[h])
            elif L[h] < 10000:
                t = t + ' '*2+str(L[h])
            elif L[h] < 100000:
                t = t + ' '*1+str(L[h])
        print t

以下是运行效果图:

转载于:https://www.cnblogs.com/zhy128/p/8085249.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值