Was möchte ich tun?Wie man in Python mehrmals eine Funktion ausspucken kann?
Ich möchte ein Palindrom in Form einer Pyramide haben. Ich kann die untere Ebene der Pyramide mit meinem Code erreichen, aber ich weiß nicht, wie man eine for-Schleife formt, die x Zeilen mit einem Palindrom in Form einer Pyramide ausspuckt.
Beispiel:
a
aba
abcba
abcdcba
abcdedcba
und so weiter ...
Mein Code:
end_letter = 0 # is this correct?
def test_palindrome(end_letter):
print call_palindrome(end_letter) + call_palindrome_second_part(end_letter)
def call_palindrome(end_letter):
letters_from_a_to_y = ""
for letter in range(97,end_letter):
letters_a_to_y += chr(letter)
return(letters_a_to_y)
def call_palindrome_second_part(end_letter):
letters_y_to_a = ""
for letter in range(end_letter,96,-1):
letters_y_to_a += chr(letter)
return(letters_y_to_a)
test_palindrome(end_letter)
Wie kann ich diesen Code erhalten zu arbeiten? Was mache ich falsch und was vermisse ich?
'end_letter' nicht initialisiert wird, bevor Sie es benutzen, ich vermute, Sie so etwas wie' end_letter = 98' tun müssen, bevor Sie anrufen 'test_palindrome (end_letter)' – depperm
Was ist 'end_letter' in' test_palindrome (end_letter) 'an der Unterseite? Sie haben es nicht definiert, daher der Fehler. – davidism
Was meinst du? Ich meine, muss ich das global definieren? Das ist eigentlich mein ganzes Problem: Ich weiß nicht, ob es global oder in irgendeiner Methode definiert werden sollte. Kann das bitte jemand erklären? – Siyah