如何将一个列表的值索引附加到另一个列表?

时间:2019-10-27 21:13:53

标签: python

我是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

2 个答案:

答案 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到列表中最后一项的位置获得随机位置。