面试的时候,面试官可能要求原地秀一段代码,比如小学生都必须会默写的九九乘法口诀表,有长方形格式、左下三角形格式、左上三角形格式、右上三角形格式、以及右下三角形格式共五种形式的九九乘法表,以下主要介绍左下三角形乘法口诀表的六种python实现方法,具体格式可以根据规律自行体会。
方法一、嵌套for循环
for i in range(1,10): for j in range(1,i+1): print("{}*{}={} ".format(j,i, i*j),end="\t") # print('%s*%s=%s'%(j,i,i*j),end='\t') print("")#换行
方法二、for循环+while循环
#定义列表 list=[1,2,3,4,5,6,7,8,9] for i in list: j=1 while j<=i: # print('{}*{}={}'.format(j,i,j*i),end='\t') print('%s*%s=%-3d' % (j,i, i * j), end='\t') j+=1 print()
方法三、嵌套while循环
#3.用嵌套while循环
i = 1 while i <= 9: j = 1 while(j <= i): #j的大小是由i来控制的 print("{}*{}={} ".format(j,i, i*j),end="\t") # print('%s*%s=%s'%(j,i,i*j),end='\t') j += 1 print() i += 1
方法四、先while循环后for循环
i=1 while (i<=9): for j in range(1,i+1): print("{}*{}={} ".format(j,i, i*j),end="\t") i+=1 print()
方法五、先for循环后while循环
for i in range(1,10): j=1 while i>=j: print("{}*{}={} ".format(j,i, i*j),end="\t") j += 1 print()
方法六、for循环+join
print('\n'.join(' '.join(['{}*{}={}'.format(i,j,i*j) for i in range(1,j+1)]) for j in range(1,10)))
打印结果: