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

再次拾起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()

最终结果都为图片所示:
python初学者:打印9*9乘法表的三种方法_第1张图片

你可能感兴趣的:(python,开发语言)