学习知识点:
1. string.join(seq): 以string字符串作为分隔符,将seq的所有元素拼接成一个新的字符串


1 s = ['%d * %d = %d' % (y, 4, 4*y) for y in range(1, 5)]
2 print('\t'.join(s))
3
2. list的赋值可以采用表达式


1 s = ['%d * %d = %d' % (y, 4, 4*y) for y in range(1, 5)]
下面是99乘法表的拆分过程
1. 打印第i行


1 i = 5
2 s = ['%d * %d = %d' % (y, i, y * i) for y in range(1, i+1)]
3 print('\t'.join(s))
2. 打印多行


1 i = 1
2 s = ['%d * %d = %d' % (y, i, y * i) for y in range(1, i+1)]
3 print('\t'.join(s))
4 i = 2
5 s = ['%d * %d = %d' % (y, i, y * i) for y in range(1, i+1)]
6 print('\t'.join(s))
7 i = 3
8 s = ['%d * %d = %d' % (y, i, y * i) for y in range(1, i+1)]
9 print('\t'.join(s))
3. 再次借助join的方式实现


1 i = 1
2 s = ['%d * %d = %d' % (y, i, y * i) for y in range(1, i+1)]
3 # print('\t'.join(s))
4 i = 2
5 s = ['%d * %d = %d' % (y, i, y * i) for y in range(1, i+1)]
6 # print('\t'.join(s))
7 i = 3
8 s = ['%d * %d = %d' % (y, i, y * i) for y in range(1, i+1)]
9 # print('\t'.join(s))
10
11 print('\n'.join('\t'.join(s) for i in range(1, 10)))
12 #将s替换成表达式后即为99乘法表
13 print('\n'.join('\t'.join(['%d * %d = %d' % (y, i, y * i) for y in range(1, i+1)]) for i in range(1, 10)))
14
15