代码:
1、下面两个代码 的结果不太一样
for i in range(1,10):
for j in range(1,i+1):
print(str(j)+'*'+str(i)+'='+str(i*j),end=' ')
print()
结果:
for i in range(1,10):
for j in range(1,i+1):
print(j,'*',i,'=',i*j,sep='',end=' ')
print()
结果:
#结果1 是通过把数字转换为字符串的形式来打印的,而结果2 是直接打印数字的值,故距离有差别,可以通过限制sep=''来实现与1同样的效果
2、
for i in range(1,10):
for j in range(1,10):
if i>j:
print('{} {} {}'.format('','',''),end=' ') #利用format打印空格来补足缩进
else:
print('{}*{}={:<2}'.format(i,j,i*j),end=' ')
print()
结果:
for i in range(1,10):
print(" "*7*(i-1),end=' ') #对于这个等式,首先是对于空格数的把控,一个等式是7个空格。
for j in range(i,10): #然后把其看作一个单元,因为第一行前面不需要补齐,所以为零个单元,剩余的每一个补齐根据当前行数,故乘(i-1)
print('{}*{}={:<2}'.format(i,j,i*j),end=' ')
print()
结果: