操作方法
最简单的一个代码: # -*- coding: utf-8 -*- for m in range(1,10): for n in range(1,10): print('%s×%s=%s'%(m,n,m*n)) 算式排成了一列,这是因为print每执行一次,都会自动换行。
在print里面,加入end=' ',就可以阻止换行: # -*- coding: utf-8 -*- for m in range(1,10): for n in range(1,10): print('%s×%s=%s'%(m,n,m*n),end=' ') 这里的运行结果里面的多行,是收到编译器界面所限,其实是一行。
九九乘法表需要一个多行多列的效果,所以需要换行,可以用一个空print消掉end来实现: # -*- coding: utf-8 -*- for m in range(1,10): for n in range(1,10): print('%s×%s=%s'%(m,n,m*n),end=' ') print() 注意看第二个print的缩进,跟第二个for齐平。
上面运行结果,出现了重复:1×2=2 和 2×1=2 这些乘积相同的式子,我们可以使用if语句对结果进行限制: # -*- coding: utf-8 -*- for m in range(1,10): for n in range(1,10): if m>=n: print('%s×%s=%s'%(m,n,m*n),end=' ') print() 这一次,就得到了正式的九九乘法表。
如果把if语句改一下,也是可以实现的: # -*- coding: utf-8 -*- for m in range(1,10): for n in range(1,10): print('%s×%s=%s'%(m,n,m*n),end=' ') if n>m: break print()
不用if,也可以,而且更简单: # -*- coding: utf-8 -*- for m in range(1,10): for n in range(1,m+1): print('%s×%s=%s'%(m,n,m*n),end=' ') print()