轉載:Python實現不同格式列印九九乘法表
前言:最近在學習Python,學習資源有慕課網上的視訊教程、菜鳥教程以及Python官方文件tutorial。雖然瞭解了Python的基本語法,但是還沒有真正意義上輸出自己寫的程式碼。程式碼小白,之前僅學過C,程式碼上的邏輯問題總是理不清楚,加上性格有點急躁,以前總是半途而廢,所以程式設計等級為渣。現在雖然剛開始做測試工作,但是不希望自己的工作僅限於功能測試,也希望能接觸到效能測試甚至白盒測試這樣對程式設計有一定要求的工作。由於目前測試的專案性質屬於web測試,所以從現在的工作入手,開始學習Python以及資料庫。利用部落格園經常整理自己的學習內容,達到鞏固加強的目的。九九乘法表應該是最初級的程式設計,但在實現過程中還是遇到不少問題,C和Python在很多地方還是不一樣,有時候會以C的思維來考慮Python程式設計問題,反而忽略Python程式設計中應該注意的地方。
通過Python實現了輸出長方形完整格式、左上三角形、右上三角形、左下三角形以及右下三角形五種格式的九九乘法表。我使用的Python版本為Python 3.2.2。
1.長方形完整格式
程式碼:
1 #完整格式輸出九九乘法表 2 for i in range(1,10): 3 for j in range(1,10): 4 print("%d*%d=%2d" % (i,j,i*j),end=" ") 5 print("")
輸出內容:
2.左上三角形
程式碼:
1 #左上三角格式輸出九九乘法表 2 for i in range(1,10): 3 for j in range(i,10): 4 print("%d*%d=%2d" % (i,j,i*j),end=" ") 5 print("") 6
輸出內容:
注:乘法算式按行輸出,與完整格式相比,內層迴圈範圍為i~9,當外層迴圈的i逐漸遞增時,每行輸出的算式個數會越來越少,print("")表示換行,不輸出這句的話輸出的乘法表格式錯亂。
3.右上三角形
程式碼:
1 #右上三角格式輸出九九乘法表 2 for i in range(1,10): 3 for k in range(1,i): 4 print (end=" ") 5 for j in range(i,10): 6 print("%d*%d=%2d" % (i,j,i*j),end=" ") 7 print("")
輸出內容:
注:相比左上三角形,內層迴圈語句多了兩句(程式碼標紅處),由於每個算式所佔的位置為7個位元組,所以多餘前面空出的地方輸出相應的空格數,在Python中不能直接寫print(" ")語句表示輸出空格,必須新增end關鍵字,表示結尾以等號右邊的內容輸出,與後面的右上和左上的差別相似。
4.左下三角形
程式碼:
1 #左下三角格式輸出九九乘法表 2 for i in range(1,10): 3 for j in range(1,i+1): 4 print("%d*%d=%2d" % (i,j,i*j),end=" ") 5 print (" ")
輸出內容:
5.右下三角形
程式碼:
1 #右下三角格式輸出九九乘法表 2 for i in range(1,10): 3 for k in range(1,10-i): 4 print(end=" ") 5 for j in range(1,i+1): 6 product=i*j 7 print("%d*%d=%2d" % (i,j,product),end=" ") 8 print (" ")
輸出內容: