我是Python的入门用户,我需要一些有关我的小问题的帮助。 基本上,我正在尝试为自己创建一个程序来帮助我学习德语。 我有一个德语单词列表及其翻译列表。 我已经设置好了,因此可以将每个单词随机化,而我的问题是翻译。 我希望程序将德语单词列表中的值附加到其翻译中。 示例:
德语= [ich,wir,肠]
翻译= [我们,很好,我]
因此,当它打印德语单词时,它将知道哪种翻译是正确的。
我尝试使用等于运算符来执行此操作,但它似乎根本不起作用:
import random
s = input("Press any key")
q = ["zeichnen", 'luft', ]
w = ['to start', "air"]
q = random.choice(q)
while True:
print('Your german word: ', q)
answer = input("Translation:")
a = input('Try again?')
if q == w:
print('Youre right')
else:
print('Thats incorrect')
if a == ('no') :
break
答案 0 :(得分:0)
我认为您想要if answer == q
做比较。
通常,如果您为变量使用更长,更具描述性的名称,则代码将更易于理解。
另外,欢迎您使用Stack Overflow!对于以后的问题,请记住,仅说“它不起作用”可能会使问题被否决或关闭;相反,尝试确切地说出会发生什么,以及您预期会发生什么。
答案 1 :(得分:0)
以我的理解,您想要一个随机的德语单词,然后为其翻译。 除非计算机能理解德语,否则您无法混淆德语单词列表。 这是您程序的替代方法:
from random import randint
q = ["zeichnen", 'luft']
w = ['to start', "air"]
while True:
place = randint(0, len(q) - 1)
print('Your german word:', q[place])
answer = input("Translation: ")
if answer == w[place]:
print("You're right")
else:
print('Thats incorrect')
a = input("Try again? ")
if a == ('no') :
break
第一行
from random import randint
是导入函数而不是整个模块的另一种方法。
此外,
的功能place = randint(0, len(q) - 1)
是从0到列表中最后一项的位置获得随机位置。