<p>您的问题是试图将字符串与字典进行比较:</p>
<pre><code>eingabe != bedeutungen:
</code></pre>
<p>这总是正确的,因此是一个无限的圆</p>
<p>您可以将其简化为:</p>
<pre><code>if eingabe in bedeutungen:
uebersetzung = bedeutungen[eingabe]
print(uebersetzung)
</code></pre>
<p>如果您想使代码更短,可以将其简化为:</p>
<pre><code>eingabe = str(input("Welches Wort möchten Sie wissen: ")).lower()
if eingabe in bedeutungen:
print(bedeutungen[eingabe])
</code></pre>
<p>另外,最好用英语(而不是德语)命名函数和变量。您可以使用<code>meanings</code>、<code>translation</code>,例如<code>inpt</code>表示<code>eingabe</code></p>
<p>如果输入不在字典中,以下代码将再次尝试翻译:</p>
<pre><code>meanings = {"computer": "Elektronische Rechenanlage",
"handy": "Kleines Funktelefon, dass man bei sich trägt",
"laptop": "flacher, tragbarer, Personal Computer"}
def print_translation(inpt):
if inpt in meanings:
print(meanings[inpt])
elif inpt.isdigit():
print("Dies ist kein Wort")
inpt = str(input("Welches Wort möchten Sie übersetzen: "))
print_translation(inpt)
else:
print("Dieses Wort ist nicht vergeben!")
inpt = str(input("Welches Wort möchten Sie wissen: "))
print_translation(inpt)
print("Verfügbare Wörter sind: Computer, Handy, Laptop")
print_translation(str(input("Welches Wort möchten Sie wissen: ")).lower())
</code></pre>