私は、ユーザーからの入力を取り、それをエンコードしてユーザーに表示するアプリケーションを構築しようとしています。ユーザー入力の文字は出力の別の文字に置き換えてください。これは、辞書のキー/値とともに使用されます。私のコードでは、それは1文字でしか動作しません。それ以上の文字が入力された場合は、それが壊れます。任意のアイデアは、入力に単語を入力することができると非常に高く評価され、反対の文字は出力の単語として表示されます。辞書のキー/値のpython
def getInput():
userInput = input("Enter String to encode: ")
return userInput
def displayOutput(userInput, encoding):
matchFound = False
for key in encoding:
if (key == userInput):
print("Encoded message", encoding[key])
matchFound = True
break
if matchFound == False:
print("***Error*** No Match Found!")
def main():
encoding ={"a": "b", "b": "c", "c": "d", "d": "e", "e": "f", "f": "g", "g": "h", "h": "i", "i": "j", "j": "k", "k": "l", "l": "m", "m": "n", "n": "o", "o": "p", "p": "q", "q": "r", "r": "s", "s": "t", "t": "u", "u": "v", "v": "w", "w": "x", "x": "y", "y": "z", "z": "a", " ": "-"}
userInput = getInput()
displayOutput(userInput, encoding)
main()
あなたは "それが壊れる" よりも詳細なことはできますか? –
入力文字列の文字をループする必要があります。 – molbdnilo
また、なぜ 'encodingでのuser_input'と' for key in encoding'ループを避けるのでしょうか? –