1. 怎麼用python輸出數字金字塔
按照你的要求編寫的數字金字塔的Python程序如下(abs()是求絕對值的函數)
n=5
for i in range(1,2*n+2):
for j in range(1,abs(n-i)+1):
print(" ",end='')
for j in range(1,n-abs(n-i)+1):
print(j,end='')
for j in range(n-abs(n-i)-1,0,-1):
print(j,end='')
print()
源代碼(注意源代碼的縮進)
2. 用python列印數字金字塔
num=eval(input('請輸入一個整數:'))
print('數字金字塔顯示如下:')
level= 1 #金字塔的高度即層數
while level <= num:
kk=1 #每一層長度的計數
t=level
length=2*t-1
while kk<=length:
if kk==1:
if kk==length:
print(format(t,str(2*num-1)+'d'),'\n')
break
#要形成金字塔型,13d是1的距離,15d是7的距離,然後進行測試
#只要之後的距離比1的距離多2,再減去2倍的層數即可以得到金字塔形狀
else:
print(format(t,str(2*num+1-2*level)+'d'),'',end='')
t-=1
else:
if kk==length:
print(t,'\n')
break
elif kk<= length/2:
print(t,'',end='')
t-=1
else:
print(t,'',end='')
t+=1
kk+=1
level+=1
3. python的一個數字金字塔問題
funcCaculateSpaces(nint)string{
str:=""
fori:=0;i<n;i++{
str+=""
}
returnstr
}
funcmain(){
varnint=6
fori:=1;i<=n;i++{
fmt.Print(CaculateSpaces(n-i))
forcount:=1;count<=i;count++{
fmt.Printf("%d",count)
}
fmt.Println("")//changeprintline
}
}
4. python生成金字塔
人生苦短,我用python!
本文將介紹三種使用python實現生成金字塔的方法,文末歸納了知識點。
本方法使用print列印出每一個字元,通過for循環計算每一次需要輸出的空格和星號。
print語句中,end=''表示不換行。
本方法利用了一個有趣的規律:
在程序中表達為 m += pow(10,i) ,即 m = m + pow(10,i) ,例如:
通過運行我們發現輸出數字的時候,由於每行數字是一次性輸出,而非每個數字輸出一次,相比方法一效率有了提升。
pow(10,i) 表示 10 i 。
本方法在方法二的基礎上再次改進空格的輸出方式,print(b*a)語句中,a表示輸出的次數。
當我把層數n設置為100的時候,發生了壯觀的一幕,感興趣的朋友歡迎自己試試。
文中同時使用了 range 數列,range[10] 表示:0 ,1 ,2 ,3 ,4 ,5 ,6 ,7 ,8 ,9 。
以下是 print() 方法的語法:
參數
pow() 方法返回 x y (x的y次方) 的值。語法為:
參考文獻:
[1] Python for 循環語句
[2] Python print() 函數
[3] Python pow() 函數
[4] Number Pyramid