一個九九乘法口訣表,引出優雅的python
中規中矩的寫法,思路是兩個循環,換行或tab,字符串格式化打印:
1 def multi99(): 2 result = '' 3 for i in range(1, 10): 4 for j in range(1, i + 1): 5 separator = '\n' if j == i else '\t' 6 result += '%d * %d = %-2d' % (j, i, i * j) 7 result += separator 8 return result 9 10 print(multi99())
優美的python寫法,生成式表達+兩個循環+換行或tab,字符串格式化打印,lambda表達式,字符串的join,一句代碼搞定:
1 print(''.join(['%d * %d = %-2d'%(y,x,x*y)+(lambda x,y:'\n' if x == y else '\t')(x,y) for x in range(1,10) for y in range(1,x+1)]))


浙公網安備 33010602011771號