无论是学习哪一门编程语言,九九乘法表都是逃不开的循环示例,通过打印九九乘法表,变形的九九乘法表可以很好的训练for
、while
循环 print
、format
函数,字符串,列表等知识。下面就介绍一些方法:
打印正向九九乘法口诀表:
方法一:常规的字符串拼接打印:
for i in range(1,10):
s = ""
for j in range(1,i+1):
s += str(j) + '*' + str(i) + '=' + str(j * i) + ' '
print(s)
>>>>:
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
1*4=4 2*4=8 3*4=12 4*4=16
1*5=5 2*5=10 3*5=15 4*5=20 5*5=25
1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81
方法二: print 与format函数格式打印:
for i in range(1,10):
for j in range(1,i+1):
print("{1}x{0}={2} ".format(i,j,i*j),end="")
print()
方法三:if else 的三元表达式打印
for i in range(1,10):
for j in range(1,i+1):
print("{1}x{0}={2} ".format(i,j,i*j),end='\n' if i==j else '')
**方法四:列表打印+参数解构 **
for i in range(1,10):
line=[]
for j in range(1,i+1):
line.append("{}x{}={} ".format(j,i,i*j))
print(*line)
总结:对以上打印的乘法表进行优化,使其每行都能一一对齐。
例如:
for i in range(1,10):
s = ""
for j in range(1,i+1):
s += "{}*{}={:<{}}".format(i, j, i * j, 5 if j < 2 else 6)
print('{:<100}'.format(s))
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
1*4=4 2*4=8 3*4=12 4*4=16
1*5=5 2*5=10 3*5=15 4*5=20 5*5=25
1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81
打印右上九九乘法表
**方法一:前补空格打印法: **
for i in range(1, 10): # row
print(end=' '*(i-1))
for j in range(i, 10): # column j [i, 10) i <= j <= 9
product = "{}*{}={}".format(i, j, i*j)
print("{:<7}".format(product), end='\n' if j==9 else '')
1*1=1 1*2=2 1*3=3 1*4=4 1*5=5 1*6=6 1*7=7 1*8=8 1*9=9
2*2=4 2*3=6 2*4=8 2*5=10 2*6=12 2*7=14 2*8=16 2*9=18
3*3=9 3*4=12 3*5=15 3*6=18 3*7=21 3*8=24 3*9=27
4*4=16 4*5=20 4*6=24 4*7=28 4*8=32 4*9=36
5*5=25 5*6=30 5*7=35 5*8=40 5*9=45
6*6=36 6*7=42 6*8=48 6*9=54
7*7=49 7*8=56 7*9=63
8*8=64 8*9=72
9*9=81
方法二:字符串拼接+format函数法打印
for i in range(1,10):
s =""
for j in range(i,10):
s +="{:3}*{}={:>{}}".format(i,j,i*j,1 if j<4 else 2 )
print("{:>100}".format(s))
以上就是几种常见打印九九乘法口诀表的Python 代码,在打印时,可以分步进行,首先打印出最普通的类型,然后在次基础上进行优化。