Python,打印九九乘法表。

 左下三角:

#jiujiukoujue.py(九九乘法口诀)左下三角

for i in range(1,10):           #i表示行
    for j in range(1,i+1):          #j表示列
        k=i*j
        print('{}*{}={}'.format(j,i,k),end='\t')
    print('\n')

代码解析:

 使用第一个for循环控制行数,变量i表示当前行数,取值范围为1到9。

 使用第二个for循环控制列数,变量j表示当前列数,取值范围为1到当前行数。

在每个内循环中,i和j的乘积结果保存到k中。‘{}*{}={}’中的每个{}分别对应j,i,k的值,其中fotmat作为Python的的格式字符串函数,主要通过字符串中的花括号{},来识别替换字段,从而完成字符串的格式化。

通过设置end='\t',在每一项打印之后不换行,而是输入一个制表符,使得乘法表的每一项在同一行上。

在内循环结束后使用print('\t')换行,进行下一行的打印。

右上三角:

#右上三角
for i in range(1,10):           #i表示行
    for j in range(i,10):          #j表示列
        k=i*j
        print('{}*{}={}'.format(i,j,k),end='\t')
    print('\n')
    print(end="\t"*i)

代码解析:

开始同上,变量j表示当前列数,取值范围为当前行数i到9。在内层循环结束后,使用print('\n')换行,并且使用print(end="\t"*i)打印相应数量的制表符,使得下一行的数字向右移动对齐。

左上三角:

#左上三角
for i in range(1,10):           #i表示行
    for j in range(i,10):          #j表示列
        k=i*j
        print('{}*{}={}'.format(j,i,k),end='\t')
    print('\n')

代码解析:

开始同上,j的范围变为当前行数i到九。

右下三角:

#右下三角
for i in range(1,10):           #i表示行
    print(end='\t'*(10-i))
    for j in range(1,i+1):          #j表示列
        k=i*j
        print('{}*{}={}'.format(j,i,k),end='\t')
    print('\n')

代码解析:

在每一行开始之前,通过print(end='\t'*(10-i))打印一定数量的制表符,以使得每一行的数字向右移动对齐。该数量根据当前行数i进行计算,即总行数减去当前行数。其他同上。

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