托倫,
函式中有幾個小錯誤和乙個邏輯問題print_y_to_a()
請注意,此函式生成乙個以z開頭的字串,但您希望將字串以相反的方向連線,而您的另乙個函式print_a_to_y()確實停止了(+1位置)。例如:
^$還要注意,您需要新增新行字元「\n」以獲得一些不錯的輸出。在
我的解決方案是:def print_a_to_y(lev):
palindrome=""
counter=0
for i in range (ord('a'),ord('z')):
if counter<=lev:
palindrome = palindrome+ chr(i)
counter+=1
else:
pass
return palindrome
def print_y_to_a(cut):
palindrome=""
for i in range (ord('z'),ord('a')-1, -1):
palindrome = palindrome + chr(i)
return palindrome[-cut:]
def palin (lev):
paal = print_a_to_y(lev) + print_y_to_a(lev)
return paal
def pyramid (levels=15):
res=""
for i in range (levels):
if i==0:
res=print_a_to_y(i)+"\n"
elif i>0:
res= res + str(palin(i)) + "\n"
else:
pass
return res
print pyramid()
另外,你需要在函式的末尾加上return語句,否則螢幕上會出現「none」。在
乾杯,希望這有幫助。
維克多
字母金字塔(類同數字金字塔)
問題描述 讓程式要求使用者輸入乙個大寫字母,使用巢狀迴圈產生像下面這樣的金字塔圖案 aaba abcba abcdba abcdecba 演算法分析 每行包括三個部分內容 若干個空格 正序排列的字母 倒序排列的字幕。使用乙個外部迴圈來處理行,在每乙個行中使用三個內部迴圈 乙個處理空格,乙個以公升序列...
高斯金字塔與拉普拉斯金字塔(python實現)
一 高斯金字塔 高斯金子塔的思路非常簡單,就是將原始影象當作金子塔的最底層,然後進行按影象長寬各減少二分之一,面積減少四分之一,進行下取樣。在進行下取樣之前需要進行高斯濾波。import numpy as np import cv2 import matplotlib.pyplot as plt d...
數字金字塔
觀察下面的數字金字塔。寫乙個程式來查詢從最高點到底部任意處結束的路徑,使路徑經過數字的和最大。每一步可以走到左下方的點也可以到達右下方的點。7 3 8 8 1 0 2 7 4 4 4 5 2 6 5在上面的樣例中,從7 到 3 到 8 到 7 到 5 的路徑產生了最大 多組輸入資料 第乙個行包含 r...