複習了一下python基礎東西,做了一下練習寫個乘法表
# -*- coding:utf-8 -*- # @Time : 2020/8/16 # @Author : Tin Neighbour # @File : demo2.py # @Software : PyCharm for i in range(1,10,1): for j in range(1,i+1,1): print(" %s * %s = %s "%(j,i,i*j),end="\t") print("\n") i = 1 while i < 10: j=1 while j<i+1: print("%s * %s = %s" %(j,i,i*j) , end="\t") j+=1 i+=1 print("\n")
上面兩個一個for迴圈,一個while迴圈 兩個顯示效果一樣
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
上面兩個實現簡單,當我接著實現右對齊時候,發現都是大三角,看了眼結果就發現後面相乘結果位數不一樣的問題以及上面空白佔位位置也需要固定,後面進行了一點調整。
第一個佔位跟c一樣,第二個佔後面。
i=1
while i < 10:
k=1
j=i
while k< 10-i:
print(end=" "*7)
k+=1
while j > 0:
print("%s*%s=%2s"%(i,j,i*j),end=" ")
j-=1
i+=1
print("\n")
i = 1
while i<=9:
k = 1
while k<=9-i:
print(end=" "*7)
k += 1
j = i
while j>=1:
print("{}*{}={:<2}".format(i,j,i*j),end = " ")
j -= 1
i += 1
print("")
兩個顯示差不多隻不過佔位前後而已。
1*1= 1 2*2= 4 2*1= 2 3*3= 9 3*2= 6 3*1= 3 4*4=16 4*3=12 4*2= 8 4*1= 4 5*5=25 5*4=20 5*3=15 5*2=10 5*1= 5 6*6=36 6*5=30 6*4=24 6*3=18 6*2=12 6*1= 6 7*7=49 7*6=42 7*5=35 7*4=28 7*3=21 7*2=14 7*1= 7 8*8=64 8*7=56 8*6=48 8*5=40 8*4=32 8*3=24 8*2=16 8*1= 8 9*9=81 9*8=72 9*7=63 9*6=54 9*5=45 9*4=36 9*3=27 9*2=18 9*1= 9 1*1=1 2*2=4 2*1=2 3*3=9 3*2=6 3*1=3 4*4=16 4*3=12 4*2=8 4*1=4 5*5=25 5*4=20 5*3=15 5*2=10 5*1=5 6*6=36 6*5=30 6*4=24 6*3=18 6*2=12 6*1=6 7*7=49 7*6=42 7*5=35 7*4=28 7*3=21 7*2=14 7*1=7 8*8=64 8*7=56 8*6=48 8*5=40 8*4=32 8*3=24 8*2=16 8*1=8 9*9=81 9*8=72 9*7=63 9*6=54 9*5=45 9*4=36 9*3=27 9*2=18 9*1=9