带字母的Python金字塔 我的问题是我必须在屏幕中间做一个字母金字塔。输出必须是15级的金字塔。这项任务必须根据定义完成。输出应该是 a aba abcba abcdcba abcdedcba abcdefedbca abcdefgfedcba abcdefghgfedcba abcdefghihgfedcba abcdefghijihgfedcba abcdefghijkjihgfedcba abcdefghijklkjihgfedcba abcdefghijklmlkjihgfedcba abcdefghijklmnmlkjihgfedcba abcdefghijklmnonmlkjihgfedcba

带字母的Python金字塔 我的问题是我必须在屏幕中间做一个字母金字塔。输出必须是15级的金字塔。这项任务必须根据定义完成。输出应该是 a aba abcba abcdcba abcdedcba abcdefedbca abcdefgfedcba abcdefghgfedcba abcdefghihgfedcba abcdefghijihgfedcba abcdefghijkjihgfedcba abcdefghijklkjihgfedcba abcdefghijklmlkjihgfedcba abcdefghijklmnmlkjihgfedcba abcdefghijklmnonmlkjihgfedcba,python,Python,我已经产生了一些代码,但它不工作。谁能帮帮我吗 def print_a_to_y(): palindrome="" for i in range (ord('a'),ord('z')): palindrome = palindrome+ chr(i) return palindrome def print_y_to_a(): palindrome="" for i in range (ord('z'),ord('a')-1, -1):

我已经产生了一些代码,但它不工作。谁能帮帮我吗

def print_a_to_y():
    palindrome=""
    for i in range (ord('a'),ord('z')):
        palindrome = palindrome+ chr(i)
    return palindrome


def print_y_to_a():
    palindrome=""
    for i in range (ord('z'),ord('a')-1, -1):
        palindrome += chr(i)
    return palindrome


def palin ():
    paal = print_a_to_y() + 'z' + print_y_to_a() 
    print paal

def pyramid (levels=15):
    for i in range (levels):
        print palin (levels-i-1) + palin (2*i+1)

pyramid()
托伦, 函数中有几个小错误和一个逻辑问题

print_y_to_a()
请注意,此函数生成一个以z开头的字符串,但您希望在另一个函数print_a_to_y()停止(+1个位置)的相反方向连接字符串。例如:

abc -> comes from print_a_to_y()
ba  -> should come from print_y_to_a().
还要注意,您需要添加新行字符“\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()
def打印到y(lev):
回文=“”
计数器=0
对于范围内的i(ord('a')、ord('z')):
如果计数器为0:
res=res+str(佩林(i))+“\n”
其他:
通过
返回res
打印金字塔()
此外,您还需要在函数末尾使用return语句,否则屏幕上将显示“None”

干杯,希望这有帮助。
维克多

到底什么不起作用?提供一些描述只是为了好玩一行:
print('\n'.join('{0:.>{2}}}{1:.嗨,托伦。如果答案在你想要的地方,别忘了投票。谢谢,再见。