python初学者:打印9*9乘法表的三种方法

本文回顾了从基础新手到资深开发者对打印9*9乘法表的不同方法,包括个人混乱逻辑的尝试,前辈优化过的代码,以及老师的高效思路,展示了代码设计的艺术和逻辑清晰的重要性。

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

再次拾起python,很基础的入门题就是打印9*9乘法表,分别有个人作答版、前辈修改版、老师答案版。现把三种方法都记下来:

打印9*9乘法表

自己作答版:能看出,逻辑很乱,因为思考时是先考虑j=i打印成正三角形的形状,再考虑i==j的情况。是倒推代码。

for i in range(1, 10):
    for j in range(1, 10):
        if i == j:
            print(i, '*', j, '=', j**2, end='\t')
        elif i > j:
            while i > j:
                n = i * j
                print(i, '*', j, '=', n, end='\t')
                j = i
    print()

长辈修改版:在我写的基础上进行修改,i>=j时就是正三角的形状。

for i in range(1, 10):
    for j in range(1, 10):
        if i >= j:
            n = i * j
            print(i, '*', j, '=', n, end='\t')
    print()

老师方法:在开始写代码时就思考i行数和j个数的关系:i=1->j=1;i=2->j=2;i=3->j=3;i=4->j=4;…说明第i行上,j就循环i次。所以,i=1,j=1;i=2,j=i.【因为range()函数左闭右开,所以为range(1,i+1)】

for i in range(1,10):
    for j in range(1,i+1):
        print(i, '*', j, '=', i*j, end='\t')
    print()

最终结果都为图片所示:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

24442552

兄弟们...谢谢知识付费

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值