#1.for循环 rows,cols = xrange(1,10),xrange(1,10) row,col = 1,1 for row in rows: for col in cols: if col <= row: print '%d*%d=%d ' % (col,row,col*row), # 代表tab键, 逗号确保同rows在同一行 print #打印空格,确保同col在同一列 #可以简化为: for rows in xrange(1,10): for cols in xrange(1,10): if cols <= rows: print '%d*%d=%d ' % (cols,rows,cols*rows), print #最清晰的方法: for i in range(1, 10): for j in range(1, i + 1): print("%d*%d=%2d" % (i, j, i * j), end=" ") print (" ") #2.while循环 row = 1 while row <= 9: col = 1 while col <= row: print '%s*%s=%s ' % (col,row,col*row), col += 1 row += 1 print #3.采用列推导式 >>> print(' '.join([' '.join(['%s*%s=%-2s' % (y, x, x*y) for y in range(1, x+1)]) for x in range(1, 10)])) 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