Wie kann ich meinen Code in python drucken

Ich habe Schwierigkeiten, einen Fehler in meinem Code zu erarbeiten. Es druckt nicht das Endprodukt und hinterlässt ein Leerzeichen.

playing = True string = "" Alphabet = ('z','a','b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z') while playing == True: string = "" eord = input('Type "d" to "decrypt" and "e" to "encrypt": ') if eord == 'e': texte = input ("Type your word to encrypt: ") key1 = int(input("Choose a key between 1-26: ")) for letter in texte: number = (ord(letter)) + (key1) letter=(chr(number)) string = (str(string)) + (str(letter)) print (string) keyword = input ("Type 'encrypt' code further or 'decrypt' further: ") if keyword == 'encrypt': plainText = input("Please enter the plain text: ") key = input("Please enter the key: ") keyList = [] keyLength = 0 while keyLength < len(plainText): for char in key: if keyLength < len(plainText): keyList.append(str(char)) keyLength = keyLength + 1 CipherText = [] IndexValue = 0 keyIncrement = 0 for plainTextChar in plainText: IndexValue = Alphabet.index(keyList[keyIncrement]) + Alphabet.index(plainTextChar) while IndexValue > 26: IndexValue = IndexValue - 26 CipherText.append(Alphabet[IndexValue]) keyIncrement = keyIncrement + 1 print (''.join(CipherText)) import sys sys.stdout.flush() finish = input('Would you like to go again Y or N') if finish == 'n' or 'N': retry = input ("Would you like to go again? Y or N: ") if retry == 'N' or 'n': print ("Please exit the window") import sys sys.exit() elif eord == 'd': texd = input ("Type your word to decrypt: ") key2 = int(input("Choose a key between 1-16: ")) for letter in texd: number = (ord(letter)) - (key2) letter=(chr(number)) string = (str(string)) + (str(letter)) print (string) keyword = input ("Type 'encrypt' code further or 'decrypt' further: ") if keyword == 'decrypt': plainText = input("Please enter the plain text: ") key = input("Please enter the key: ") keyList = [] keyLength = 0 while keyLength < len(plainText): for char in key: if keyLength < len(plainText): keyList.append(str(char)) keyLength = keyLength - 1 completeCipherText = [] cipherCharIndexValue = 0 keyIncrement = 0 for plainTextChar in plainText: cipherCharIndexValue = Alphabet.index(keyList[keyIncrement]) + Alphabet.index(plainTextChar) while cipherCharIndexValue > 26: cipherCharIndexValue = cipherCharIndexValue + 26 completeCipherText.append(Alphabet[cipherCharIndexValue]) keyIncrement = keyIncrement - 1 print (''.join(completeCipherText)) finish = input('Would you like to go again Y or N') if finish == 'n' or 'N': retry = input ("Would you like to go again? Y or N: ") if retry == 'N' or 'n': print ("Please exit the window") import sys sys.exit() 

Gibt es eine Möglichkeit, die ich beheben kann oder zwinge es zu drucken?

Hier ist die Ausgabe des Codes.

 Type "d" to "decrypt" and "e" to "encrypt": e Type your word to encrypt: hello Choose a key between 1-26: 3 khoor Type 'encrypt' code further or 'decrypt' further: encrypt Please enter the plain text: python Please enter the key: cipher Would you like to go again Y or N 

    One Solution collect form web for “Wie kann ich meinen Code in python drucken”

    Sie haben das Problem mit dem Tababstand. Konkret hier:

      while IndexValue > 26: IndexValue = IndexValue - 26 CipherText.append(Alphabet[IndexValue]) keyIncrement = keyIncrement + 1 

    Für den ersten Pass ist der IndexValue 19, also überspringt er auch CipherText append. Und deshalb gibt es nichts zu drucken.

    Richtige Einrückung hier:

      while IndexValue > 26: IndexValue = IndexValue - 26 CipherText.append(Alphabet[IndexValue]) keyIncrement = keyIncrement + 1 

    Dann fragen Sie noch einmal, ob es noch in der Verschlüsselung für die Schleife zu beenden ist.

    Allerdings haben Sie andere Mängel in Ihrem Design. Wenn der Schlüssel länger als 1 char ist, lautet der Indexfehler aufgrund der KeyList mit nur nur 1 Element. Während Sie in der for-Schleife mehr Items in keyList erwarten.

    Python ist die beste Programmiersprache der Welt.